2012-06-18 37 views
0

我有这样的:如何计算NSMutableArray的每个内容的散列MD5?

NSString *string1 = ...; 
NSString *string2 = ...; 

NSMutableArray *array = [NSMutableArray alloc]inithWithObjects:string1, string2]autorelease]; 

如何计算为array的每个内容的MD5哈希(或其他更合适的散列),用于进一步的比较?

谢谢!

回答

1

您可以在阵列的每个字符串使用此方法:

- (NSString*)md5HexDigest:(NSString*)input { 
const char* str = [input UTF8String]; 
unsigned char result[CC_MD5_DIGEST_LENGTH]; 
CC_MD5(str, strlen(str), result); 

NSMutableString *ret = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH*2]; 
for(int i = 0; i<CC_MD5_DIGEST_LENGTH; i++) { 
    [ret appendFormat:@"%02x",result[i]]; 
} 
return ret; 
} 

不要忘记包括:

#import <CommonCrypto/CommonDigest.h> 
+0

非常感谢您! – Winston

+0

不客气! – Lolloz89