簡體   English   中英

如何在objective-c中解析數組JSON

[英]How can I parse array JSON in objective-c

我在Android中很容易做到,但我很少失去如何在iOs中做到這一點。 我的json就像:

[{"name":"qwe","whatever1":"asd","whatever2":"zxc"}, 
{"name":"fgh","whatever1":"asd","whatever2":"zxc"}]

如果我做:

NSData *jsonData = [data dataUsingEncoding:NSUTF32BigEndianStringEncoding];

rows  = [NSJSONSerialization JSONObjectWithData: jsonData options: NSJSONReadingMutableContainers error: &error];

在行中可以訪問嗎?

NSString *name = [[rows objectAtIndex:0] [objectForKey:@s"name"]];

或者我是怎么做到的? 謝謝。

FINALLY NSString *name = [[rows objectAtIndex:0] objectForKey:@"name"]]; 作品! :d

我認為這會有用,但是你想要:

NSString *name = [[rows objectAtIndex:0] objectForKey:@"name"];

(刪除無關的方括號並使用@"name"作為字符串文字)。

但是,輸入JSON真的是UTF-32格式嗎?

NSMutableArray *row= [NSJSONSerialization JSONObjectWithData: jsonData options:        NSJSONReadingMutableContainers error: &error];
        for (int i=0; i<[row count]; i++) {
            NSMutableDictionary *dict=[row objectAtIndex:i];;
            NSString * name=[dict valueForKey:@"name"];
            NSLog(@"%@",name);
        }
    }

假設NSJSONSerialization操作成功,只需:

NSString *name = rows[0][@"name"];

NSUTF32BigEndianStringEncoding是可疑的,json數據通常是NSUTF8StringEncoding

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM