2013-05-08 72 views
-6

JSON对象有一个JSON,如: -我如何以检索在的NSString

{  
    author =  { 
      class = "pocketapptest.Author"; 
      dateCreated = "2013-05-08T00:03:46Z"; 
      firstName = Kurt; 
      id = 1; 
      lastName = Vonnegut; 
      lastUpdated = "2013-05-08T00:03:46Z"; 
     }; 
     class = "pocketapptest.Book"; 
     dateCreated = "2013-05-08T00:03:46Z"; 
     id = 1; 
     lastUpdated = "2013-05-08T00:03:46Z"; 
     title = "Slaughterhouse Five"; 
    } 

而且我可以访问dateceated /标题

NSString* title = [jsondata objectForKey:@"title"]; 

但我怎么能存储的firstName/lastName的等等。

+3

你的json无效 – 2013-05-08 09:29:44

+3

此外,解析JSON非常简单,并且在这个站点上已经有数百次的问题了。我们不需要关于如何解析JSON的另一个问题。 – borrrden 2013-05-08 09:32:29

+0

你可以通过:jsondata [@“title”]或者jsondata [@“author”] [@“firstname”]直接访问该属性。 – ltebean 2013-05-08 09:33:22

回答

0

尝试这样,你可以得到价值像下面

NSString* firstName = [[jsondata objectForKey:@"author"]objectForKey:@"firstName"]; 
+0

谢谢:)它的工作 – Sulabh 2013-05-08 09:30:23

+0

@Sulabh:欢迎并接受答案。 – Balu 2013-05-08 09:30:49

+0

@ Sulabh:只需点击正确的标记即可接受不需要的任何操作。 – Balu 2013-05-08 09:37:49

0

我猜你可能只使用jsondata objectForKey:两次。就这样:

NSString* firstName = [[jsondata objectForKey:@"author"]objectForKey:@"firstName"]; 

希望它可以帮助

0

为mydetails

MyDetails *mydetails = [MyDetails alloc]init]; 

mydetails.class = [[jsondata objectForKey:@"author"]objectForKey:@"class"]; 
mydetails.dateCreated = [[jsondata objectForKey:@"author"]objectForKey:@"dateCreated"]; 
mydetails.firstName = [[jsondata objectForKey:@"author"]objectForKey:@"firstName"]; 
mydetails.ID = [[jsondata objectForKey:@"author"]objectForKey:@"id"]; 
mydetails.lastName = [[jsondata objectForKey:@"author"]objectForKey:@"lastName"]; 
mydetails.lastUpdated = [[jsondata objectForKey:@"author"]objectForKey:@"lastUpdated"]; 
+0

hey popeye, 访问它们,这种方法看起来不错。 ,所以我有10个JSON数组,我可以存储他们,并访问它,如果如何 – Sulabh 2013-05-08 09:46:46

+0

NSMutableArray * myDetailsArray = [NSMutableArray alloc] init];对于(){ – jailani 2013-05-08 09:51:46

+0

创建一个mutablearray为每个对象分配MyDetails在jsonarray填充myDetail并添加到可变数组然后分解myDetail ....在循环中执行此操作 – jailani 2013-05-08 09:58:07

0

JSON是创建具有高德一类将数据从JSON存储

@interface MyDetails 

@property(nonatomic, retain) NSString *class, *dateCreated, *firstName,*ID, *lastName, *lastUpdated; 
@end 

@implementation MyDetails 

@synthesize class, dateCreated, firstName, ID, lastName, lastUpdated; 

@end 

分配情况无效。首先使用有效的JSON。您可以检查您的JSON是否有效here

然后从json访问字符串对象。

希望它可以帮助你。

+0

为什么它无效? – Sulabh 2013-05-08 09:44:49

+0

在任何JSON验证工具中检查您的json – 2013-05-08 10:05:45