我已成功将UIImage转换为NSData并将其发送到使用SBJson Web服务的服务器。 我使用这个代码:如何将NSData转换为UIImage?
img=mainImage.image;
NSData *imgdata=UIImagePNGRepresentation(img);
NSString *post =[[NSString alloc] initWithFormat:@"gid=%@&image=%@",[lblgid text],imgdata];
NSURL *url=[NSURL URLWithString:@"http://www.abchjahdkahdakjskahdk/updategameimage.php"];
这里IMG是UIImage的,mainImage是的UIImageView。从这方面看,一切都进展顺利。 现在在另一端,我必须得到图像有没有面临的问题。 我使用这个代码:
NSData *imgdata=[abc valueForKey:@"image"];
imge = [UIImage imageWithData:imgdata];
imgview=[[UIImageView alloc]initWithImage:imge];
当我打印imgdata它返回相同的数据,因为我从另一端发送,但是当我试图此数据转换回一个UIImage的(在第二行上面的代码)它抛出一个异常。
2013年1月22日14:23:43.298 Drase [946:11303] - [__ NSArrayI长度]:无法识别的选择发送到实例0x7566800 2013年1月22日14:23:43.298 Drase [946:11303 ] *终止应用程序由于未捕获的异常 'NSInvalidArgumentException',原因: ' - [__ NSArrayI长度]:无法识别的选择发送到实例0x7566800' *第一掷调用堆栈: (0x1ce1012 0x111ee7e 0x1d6c4bd 0x1cd0bbc 0x1cd094e 0x1cb1b2 0x881f3 0x87ef4 0x1c659 0x1132705 0x69920 0x698b8 0x12a671 0x12abcf 0x129d38 0x9933f 0x99552 0x773aa 0x68cf8 0x1c3cdf9 0x1c3cad0 0x1c56bf5 0x1c56962 0x1c87bb6 0x1c86f44 0x1c86e1b 0x1c3b7e3 0x1c3b668 0x6665c 0x29d2 0x2905) libC++ abi.dylib:终止称为抛出异常。
我没有得到任何解决方案,请帮助我解决这个问题。
无论'abc'是返回一个'NSArray'时'valueForKey:'叫上其与键'@ “图像”'。什么是'abc'? –
最有可能的编码问题 - 您可以在* imgdata'值发送数据之前重新创建图像* – James
plz告诉abc的类型 –