2012-06-18 55 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