如何在objective-c中增加一个Json对象

Posted

技术标签:

【中文标题】如何在objective-c中增加一个Json对象【英文标题】:How to increment a Json Object in objective-c 【发布时间】:2013-03-26 20:26:45 【问题描述】:

如何增加一个 Json 数组?

我有这个数组,这个“jsonObjects”从webservice加载一个Json:

            arrBusca = [jsonObjects objectForKey:key];

如果我打印这个数组,结果如下:

2013-03-26 16:50:48.167 teste[6645:907] array 1: (
    
    idMarca = 118;
    idTipo = 1;
    marca = "";
    ordem = 9999;
    tipo = Carro;
    ,
    
    idMarca = 60;
    idTipo = 1;
    marca = " -";
    ordem = 2;
    tipo = Carro;
    ,
    
    idMarca = 117;
    idTipo = 1;
    marca = "---";
    ordem = 2;
    tipo = Carro;
   

我想增加这个数组,所以我尝试:

    marcas *myPerson = [[marcas alloc] init];
    myPerson.marca = [NSString stringWithFormat:@"Fiat %d", i];
    myPerson.idMarca = [NSString stringWithFormat:@"%d", i];
    [arrBusca addObject:myPerson];

但结果是:

2013-03-26 16:50:48.167 teste[6645:907] array 1: (
    
    idMarca = 118;
    idTipo = 1;
    marca = "";
    ordem = 9999;
    tipo = Carro;
    ,
    
    idMarca = 60;
    idTipo = 1;
    marca = " -";
    ordem = 2;
    tipo = Carro;
    ,
    
    idMarca = 117;
    idTipo = 1;
    marca = "---";
    ordem = 2;
    tipo = Carro;
   ,
"<marcas: 0x1fd807e0>",
"<marcas: 0x1fd89e40>",
"<marcas: 0x1fd80c90>",
"<marcas: 0x1fd8a1b0>",
"<marcas: 0x1fd8ada0>",
"<marcas: 0x1fd89cb0>",

有人知道如何增加 jsonobject 数组吗?

【问题讨论】:

【参考方案1】:

您需要提供 NSCoder 方法来归档和取消归档您的“marcas”对象。

现在,当您将对象添加到“arrBusca”NSMutableArray(它是可变的,对吗?)时,它们被添加为“marcas”对象而不是您从 JSON 解码的原始非 marcas 对象)。

【讨论】:

谢谢迈克尔,但我不知道怎么做。我试试这个,但结果相同 =( gist.github.com/filipecrosk/5249188

以上是关于如何在objective-c中增加一个Json对象的主要内容,如果未能解决你的问题,请参考以下文章

将 Objective-C 对象序列化和反序列化为 JSON

将objective-c自定义对象序列化为OSX的JSON?

Objective-C:如何在 JSON 中读取 JSON?

Objective-C AFnetworking:停止请求

在 IOS(Objective-C)中有效地解析 JSON 到 Realm DB

如何在 Objective-C iOS 中解析 JSON