最近在做一个水产项目,项目中集成了AFNetWorking3.1,AF已经集成了上传图片的办法,但是为了和安卓使用一个服务器接口,需要将图片进行base64编码转换为字符串,作为参数进行上传。话不多说,上代码
image转换为字符串
NSData* data=UIImageJPEGRepresentation(_headerButton.imageView.image, 0.00000001);
NSString* imageStr= [data base64EncodedStringWithOptions:0];
NSString* baseString=(__bridge NSString*)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)imageStr, NULL, CFSTR(":/?#[]@!$&’()*+,;="), kCFStringEncodingUTF8);//进行处理,否则上传到服务器后特殊字符会被过滤
字符串转换为image
NSData* imageData=[[NSData alloc]initWithBase64EncodedString:imageString
UIImage* image=[UIImage imageWithData:imageData];