http://www.iphonedevsdk.com/forum/iphone-sdk-development/17659-calculating-md5-hash-large-file.html
这是有人想到的解决方案:
+(Nsstring*)fileMD5:(Nsstring*)path{ NSfileHandle *handle = [NSfileHandle fileHandleForReadingAtPath:path]; if( handle== nil ) return @"ERROR GETTING file MD5"; // file dIDnt exist CC_MD5_CTX md5; CC_MD5_Init(&md5); BOol done = NO; while(!done) { NSautoreleasePool * pool = [NSautoreleasePool new]; NSData* fileData = [handle readDataOfLength: CHUNK_SIZE ]; CC_MD5_Update(&md5,[fileData bytes],[fileData length]); if( [fileData length] == 0 ) done = YES; [pool drain]; } unsigned char digest[CC_MD5_DIGEST_LENGTH]; CC_MD5_Final(digest,&md5); Nsstring* s = [Nsstring stringWithFormat: @"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",digest[0],digest[1],digest[2],digest[3],digest[4],digest[5],digest[6],digest[7],digest[8],digest[9],digest[10],digest[11],digest[12],digest[13],digest[14],digest[15]]; return s;}总结
以上是内存溢出为你收集整理的objective-c – 是否有一个MD5库不需要整个输入的同时?全部内容,希望文章能够帮你解决objective-c – 是否有一个MD5库不需要整个输入的同时?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)