我想将缓存的Web图像存储为带有散列作为文件名的文件,因为我认为原始Web URL可能包含可能导致文件系统出现问题的奇怪字符.
哈希函数不需要加密,但它肯定需要很快.
例:
输入:http://www.calumetphoto.com/files/iccprofiles/icc-test-image.jpg
输出:3573ed9c4d3a5b093355b2d8a1468509
这是通过使用MD5()来完成的,但由于我对该主题不太了解,我不知道它是否有点过分( – >慢).
解决方法 出于安全考虑,MD5可能会被破坏,但它适用于您描述的情况.关于如何在iPhone上实现它的 Here’s a thread.看看Vroomtrap的帖子.对于后代,这是我自己的代码版本:- (Nsstring *)MD5Hash { const char *cStr = [self UTF8String]; unsigned char result[CC_MD5_DIGEST_LENGTH]; CC_MD5( cStr,strlen(cStr),result ); return [Nsstring stringWithFormat: @"%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X",result[0],result[1],result[2],result[3],result[4],result[5],result[6],result[7],result[8],result[9],result[10],result[11],result[12],result[13],result[14],result[15] ];}
您需要导入CommonCrypto / CommonDigest.h标头.
总结以上是内存溢出为你收集整理的iPhone:快速哈希函数,用于存储Web图像(url)作为文件(哈希文件名)全部内容,希望文章能够帮你解决iPhone:快速哈希函数,用于存储Web图像(url)作为文件(哈希文件名)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)