ios根据文件路径,将文件进行MD5加密

来源:互联网 发布:口袋妖怪编辑队伍软件 编辑:程序博客网 时间:2024/06/04 20:08

1、导入头文件 

#import <CommonCrypto/CommonDigest.h>

-(NSString *)getMD5:(NSString *)path {        NSFileHandle *handle = [NSFileHandle fileHandleForReadingAtPath:path];    if( handle== nil ) {        return nil;    }    CC_MD5_CTX md5;    CC_MD5_Init(&md5);    BOOL done = NO;    while(!done)    {        NSData* fileData = [handle readDataOfLength: 256 ];        CC_MD5_Update(&md5, [fileData bytes], (unsigned)[fileData length]);        //        CC_MD5_Update(&md5, [fileData bytes], [fileData length]);        if( [fileData length] == 0 ) done = YES;    }    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;}