iOS Md5编码

第一种方法

+ (NSString *) md5:(NSString *)str

{

    const char *cStr = [str UTF8String];

    unsigned char digest[CC_MD5_DIGEST_LENGTH];

    CC_MD5( cStr, (unsigned int)strlen(cStr), digest );

    

    NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];

    

    for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)

        [output appendFormat:@"%02X", digest[i]];

    

    

    return [output lowercaseString];

}

第二方法


- (NSString *)cachedFileNameForKey:(NSString *)key {

    const char *str = [key UTF8String];

    if (str == NULL) {

        str = "";

    }

    unsigned char r[CC_MD5_DIGEST_LENGTH];

    CC_MD5(str, (CC_LONG)strlen(str), r);

    NSString *filename = [NSString stringWithFormat:@"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%@",

                          r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8], r[9], r[10],

                          r[11], r[12], r[13], r[14], r[15], [[key pathExtension] isEqualToString:@""] ? @"" : [NSString stringWithFormat:@".%@", [key pathExtension]]];

    return filename;

}


你可能感兴趣的:(iOS Md5编码)