为iOS7中的CLOB编码代码64中的图像

为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]

我通常使用这种代码形式将图像编码/解码到base64,并可以插入数据库中的CLOB中

//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];
}