问题描述
- 如何计算位于iOS相册中图片的正确md5值
-
具体情况
在OS X下,计算得的正确md5值是:63e3fbe6 a0438f26 e49e5dab 1c4af0d3。
NSData *temp = [[NSData alloc] initWithContentsOfFile:@""/Users/apple/Pictures/temp/tu7.png""];NSLog(@""md5: %@"" [temp md5]);
在iOS中,UIImagePickerControllerDelegate协议,imagePickerController: didFinishPickingMediaWithInfo:方法,计算的的md5值是:55ea2f62 5df31067 683aa9a8 3a06d420。
UIImage *image = info[UIImagePickerControllerOriginalImage];NSData *temp = UIImagePNGRepresentation(image);NSLog(@""md5: %@"" [temp md5]);
两个md5值结果不一样,我希望计算图片整个文件的md5,因为要拿这个md5值与服务器上贮存的图片进行比对,服务器上图片文件计算得md5与通过绝对路径计算得md5相同,所以我尝试获取被选中图片的路径,像/Users/apple/Pictures/temp/tu7.png这种形式的,我知道通过info可以获取asset library url。
NSURL *imgurl = [info objectForKey:UIImagePickerControllerReferenceURL];
获得的结果是像assets-library://asset/asset.JPG?id=00000000-0000-0000-0000-00000000007E&ext=JPG这种形式的。
问
- 有什么方法可以把asset library url变成绝对路径,也就是形式assets-library://asset/asset.JPG?id=00000000-0000-0000-0000-00000000007E&ext=JPG -> 形式/Users/apple/Pictures/temp/tu7.png 的转变?
- 如果没有,有什么方法可以决解这个问题?能否提供提供决解思路?
时间: 2025-01-31 06:08:24