搜到了大众使用版本,但是输出的是乱码,不知道是不是其他人也是介样子。代码如下:
-(NSString*)stringToMD5:(NSString *)str{
// 将接受的参数转为UTF-8格式
const char *cstr = [str UTF8String];
// 设定接受的结果数组长度
unsigned char result[CC_MD5_DIGEST_LENGTH];
// 将字符串转换成了32位的16进制数列
CC_MD5(cstr, (CC_LONG)strlen(cstr), result);
// 创建一个可变字符串
NSMutableString *saveResult = [NSMutableString string];
// 组装对应的字符串,%02x就是输出两位16进制数据,不足2为补0
for (int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) {
[saveResult appendFormat:@"%02x",result[i]];
}
return saveResult;
}
搜索了好多文章,最后在简书里面找到了合适的解决方案,再次记录一下,文章作者写的很详细,我就不在这里再献丑了。记录一下。如需请戳链接