之前写过一个 swift md5 加密的的文章很短,很短,但是很实用,有的朋友说有问题不能运行,这里我先声明我的xcode9.3的 这个版本截止到目前是最新的,我这个是没问题的.那么我总是感觉那个方法还有点oc的味道,所以今天就改成完全是swift 版本.
直接上代码:
var MD5String: String {
let cStrl = cString(using: String.Encoding.utf8.rawValue);
let buffer = UnsafeMutablePointer<UInt8>.allocate(capacity: 16);
CC_MD5(cStrl, CC_LONG(strlen(cStrl!)), buffer);
var md5String = "";
for idx in 0...15 {
let obcStrl = String.init(format: "%02x", buffer[idx]);
md5String.append(obcStrl);
}
free(buffer);
return md5String;
}
可以给String 添加一个扩展,这样MD5就是Ta的一个属性了,效率高很多.
另外要说的是 其他的操作不能少,如果还有问题,欢迎拍砖....