从nsmutable数组创建json对象

时间:2016-05-24 13:14:59

标签: ios objective-c

我有三个nsmutablearray imageNameArray,imageSizeArray,baseArray。

我必须创建一个以下类型的json。

{
  "documents": [
    {
      "file_size": 48597,
      "file_name": "pisa-en.pdf",
      "file_content": "base64String"
    }
  ]
}

由于文档数组中的元素数量可能不同,我试图从数组创建nsdictionary,如下所示,

for (int i = 0; i< [_imageNameArray count]; i++){
                [dictionary setValue:self.imageNameArray[i] forKey:@"file_name"];
                [dictionary setValue:self.imageSizeArray[i] forKey:@"file_size"];
                [dictionary setValue:self.baseArray[i] forKey:@"file_content"];

            }

但它没有创建所需类型的json。当我试图打印它时,键和值之间存在等于符号。

1 个答案:

答案 0 :(得分:1)

无需在控制台中检查它是等号还是冒号。如果要将数据发送到服务器,请先将其转换为数据,如

NSDictionary *dict ; // your dict or array

NSData *data = [NSJSONSerialization dataWithJSONObject:dict options:0 error:nil];

它将以冒号(:)而不是=转换它。

如果您使用的是AFNetworking,那么您不需要执行此jsonserialization,您可以直接将字典或数组作为参数传递给方法,并通过afnetworking管理所有事情。

希望这会有所帮助:)