1

我有一个将图像字节数据 ( .jpg) 发送到 iOS 设备的 Web 服务。iOS 设备将该数据保存到.jpg原来的状态,一旦将其保存到本地文件系统,由于我们在 iOS 设备上尝试打开它时收到“文件损坏”消息,因此无法打开该文件。此消息的细节无关紧要。

我是开发 Web 服务的 .NET 开发人员。我对Objective C一无所知——我们有另一个开发人员在处理它。

问题:我需要知道的是 iOS 设备是否期望字节数据以某种方式编码,是否必须是 Base64 字符串等。我不确定通过字节数据发送文件的约定是什么转移到 iOS 设备。任何帮助,将不胜感激。

4

1 回答 1

2

去过那里,但在 iOS 端。正如您所说,我们为解决此问题所做的就是让 .NET 服务器将图像作为 base64 编码字符串发送。

在 iOS 端,开发者必须使用 base64 解码类(互联网上有很多,例如:http ://www.imthi.com/wp-content/uploads/2010/08/base64.zip ),将其转换为 NSData,然后使用该数据创建图像。

应该看起来像这样:

NSString *b64string = @"string to decode";
NSData *imgData = [DecoderClass decodeBase64FromString:b64String];
UIImage *image = [UIImage imageWithData:imgData];

如果数据正确,它应该可以工作。UIImage 是一个高级类,应该自动处理图像类型(jpg、png 等),只要数据一致。

于 2013-08-15T21:35:53.457 回答