Gitnuro/src/main/kotlin/app/extensions/StringExtensions.kt
2022-06-19 19:52:53 +02:00

42 lines
920 B
Kotlin

package app.extensions
import java.math.BigInteger
import java.security.MessageDigest
val String.md5: String
get() {
val md = MessageDigest.getInstance("MD5")
return BigInteger(1, md.digest(this.toByteArray())).toString(16).padStart(32, '0')
}
val String.dirName: String
get() {
val parts = this.split(systemSeparator)
return if (parts.isNotEmpty())
parts.last()
else
this
}
val String.dirPath: String
get() {
val parts = this.split(systemSeparator).toMutableList()
return if (parts.count() > 1) {
parts.removeLast()
parts.joinToString(systemSeparator)
} else
this
}
val String.lineDelimiter: String?
get() {
return if (this.contains("\r\n"))
"\r\n"
else if (this.contains("\n"))
"\n"
else
null
}