我允许我的应用的用户拍摄照片或从他们的库中选择一个。选择后,我需要获取图像的数据并将其转换为字符串,以便将其发送到Web服务。
我目前遇到的问题是,当我将编码设置为UTF8时,[NSString initWithData:]返回nil。我需要将它设置为UTF8以获取XML消息。
NSString *dataString = [[NSString alloc] initWithData:UIImageJPEGRepresentation(theImage, 1.0) encoding:NSUTF8StringEncoding];
感谢您的任何建议!
答案 0 :(得分:0)
您无法使用initWithData:encoding:方法将UIImage转换为NSString。此方法仅用于将字符串的数据转换为NSString(例如文本文件)。
如果您尝试将任何类型的二进制数据转换为NSString,则可以使用某种编码。 Base64被广泛使用。此外,您的服务器应该能够解码您发送的内容。
此外,在大多数情况下,将图像发送到服务器只需要像以前一样以二进制形式发送它。