fun encode(text: String): String {
try {
//获取md5加密对象
val instance: MessageDigest = MessageDigest.getInstance("MD5")
//对字符串加密,返回字节数组
val digest:ByteArray = instance.digest(text.toByteArray())
var sb : StringBuffer = StringBuffer()
for (b in digest) {
//获取低八位有效值
var i :Int = b.toInt() and 0xff
//将整数转化为16进制
var hexString = Integer.toHexString(i)
if (hexString.length < 2) {
//如果是一位的话,补0
hexString = "0" + hexString
}
sb.append(hexString)
}
return sb.toString()
} catch (e: NoSuchAlgorithmException) {
e.printStackTrace()
}
return ""
}
在Kotlin中,我们可以直接把这个方法定义为顶级函数,然后在需要的地方直接使用
例如 :encode(password.text.toString())
当然,你也可以直接扩展一个方法,让edittext中的数据直接可以转换为加密过的字符串…