【发布时间】:2013-03-31 13:11:32
【问题描述】:
我有一个发布网络服务,我需要在其中发送字节数组中的图像,并且因为我需要以 JSON 格式发送发布参数,所以我创建了它的NSDictionary。我的问题是如何将对象分配给Byte 的字典中的键,我尝试这样做并且在创建NSDictionary 时应用程序崩溃。我还用代码解释了每个步骤,以便于理解下面的问题:-
这是我将图像转换为字节格式的代码:-
NSData *data = [NSData dataWithContentsOfFile:filePath];
NSUInteger len = [data bytes];
Byte *byteData = (Byte*)malloc(len);
memcpy(byteData, [data bytes], len);
所以,现在我有Byte,其中包含字节数组中的图像,现在我想将此对象分配给NSDictionary。这是代码,
NSDictionary *dictJson = [NSDictionary dictionaryWithObjectsAndKeys:
byteData, @"photo",
nil];
现在我的应用程序在上面创建dictJson 对象的行中崩溃了,有什么办法可以将字节传递给NSDictionary?
还有一个问题,我怎么NSLogbyteData?
请帮帮我。
提前致谢!
【问题讨论】:
-
我的回答对吗?你还不明白为什么你的应用会崩溃!!!我遇到了问题,我为二进制数据做了很多方法。实际情况是,当您尝试使用 NSDictionary 创建 JSON 对象时,所有图像都应采用特定的编码格式。否则你的应用会崩溃。
-
您想在服务器上发布带有图像的数据,对吗?你的数据是字典形式的吗?
-
@DipenPanchasara 是的,它是字典格式,用于将字典创建为 JSON 以进行发布请求
-
@iAmbitious 我已经知道如何使用base64,但那是我不想要的,我只想要字节数组..
-
查看@Martin R 对每个答案的评论!!!!
标签: iphone ios objective-c image bytearray