为iOS7中的CLOB编码代码64中的图像
我通常使用这种代码形式将图像编码/解码到base64,并可以插入数据库中的CLOB中为iOS7中的CLOB编码代码64中的图像,ios7,base64,encode,Ios7,Base64,Encode,我通常使用这种代码形式将图像编码/解码到base64,并可以插入数据库中的CLOB中 //Return image encoded to base64 - (NSString *)encodeToBase64String:(UIImage *)image { NSData * data = [UIImagePNGRepresentation(image) base64EncodedDataWithOptions:NSDataBase64Encoding64CharacterLineLength]
//Return image encoded to base64
- (NSString *)encodeToBase64String:(UIImage *)image {
NSData * data = [UIImagePNGRepresentation(image) base64EncodedDataWithOptions:NSDataBase64Encoding64CharacterLineLength];
NSString *convertido=[data base64EncodedStringWithOptions:kNilOptions];
return convertido;
}
//Descodifica la foto de string a imagen se le llama mas arriba
- (UIImage *)decodeBase64ToImage:(NSString *)strEncodeData {
NSData *data = [[NSData alloc]initWithBase64EncodedString:strEncodeData
options:NSDataBase64DecodingIgnoreUnknownCharacters];
return [UIImage imageWithData:data];
}
但是从iOS7,可以正确读取图像并进行解码,但是当我在iOS7中对来自画廊或相机更新数据库的图像进行编码时,这些图像的格式不好,会使我的图像崩溃
如何在不破坏我的格式的情况下以字符串base64编码imagen。我可以用此编码修复:
- (NSData*)encodeDictionary2:(NSDictionary*)dictionary {
NSMutableArray *parts = [[NSMutableArray alloc] init];
for (NSString *key in dictionary) {
NSString *encodedValue = [dictionary objectForKey:key];
NSString *encodedKey = [key stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *part = [NSString stringWithFormat: @"%@=%@", encodedKey, encodedValue];
[parts addObject:part];
}
NSString *encodedDictionary = [parts componentsJoinedByString:@"&"];
return [encodedDictionary dataUsingEncoding:NSUTF8StringEncoding];
}