有些时候 项目会有一些对图片处理的要求 例如在本地图片不是一个 可以直接看的jpg图片
但是在项目中读取出来 经过解密 会显示出的图片
我们的项目 就有一个这样的要求
用objc的NSData读取,读取后转换成byte类型,修改数组的最开头两个值。
现在的值是 1B, 1B, 修改成 FF, D8
我尝试解决的办法如下
NSString *picPath = [[NSBundle mainBundle]pathForResource:getPicName ofType:@"dat" inDirectory:@"locality" ];
NSMutableData *picData = [NSMutableData dataWithContentsOfFile:picPath];
Byte byte[] = {0xff,0xd8};
NSRange range = NSMakeRange (0, 2);
[picData replaceBytesInRange:range withBytes:byte];
UIImage *picName = [UIImage imageWithData:picData];
[self.egoImageView setImage:picName];
这样 就通过简单的替换 把图片NSData前两位地址更改了