0

我是 xcode 的新手.. 我很想了解如何从 XML 中检索数据.. 这是我坚持了好几天的草稿代码.. 我设法显示了一个 XML 代码列表

XML 代码:

<find>
<set_number>038881</set_number>
<no_records>000138874</no_records>
<no_entries>000007000</no_entries>
</find>

但是,现在我在从这个 xml 中仅检索 set_number 时遇到了一些困难......由于机密目的,我将其留空的 URL.. 所以不要介意......最后两个代码导致我的应用程序强制关闭。 。 帮助!!

 NSString *URL = [NSString stringWithFormat:@""];

 NSMutableData *receivedData = [[[NSMutableData alloc] initWithContentsOfURL:[NSURL URLWithString:URL] ]autorelease];            
 NSString *theRecord = [[[NSString alloc] initWithData:receivedData encoding:NSUTF8StringEncoding] autorelease];

  NSString *path = [theRecord valueForKey: @"set_number"];
     NSLog(@"File Data: %@", path);    

我尝试在底部添加此代码..

   if ([theRecord isEqualToString:@"no_records"]){ 

        NSLog(@"Contents of URL: %@", theRecord); 
}

然后我也尝试调试我的代码..没有显示错误..相反它们显示0作为输出..我想知道是不是因为我的 no_records 是一个整数?但是我已将记录分配为字符串..这就是他们无法显示的原因吗?


我尝试在底部添加此代码..

   `if ([theRecord isEqualToString:@"no_records"]){ 

        NSLog(@"Contents of URL: %@", theRecord); 
}` 

然后我也尝试调试我的代码..没有显示错误..相反它们显示0作为输出..我想知道是不是因为我的 no_records 是一个整数?但是我已将记录分配为字符串..这就是他们无法显示的原因吗?请帮忙!!

4

2 回答 2

0

要解析您的 XML,请使用 NSXMLParser 类。

于 2012-08-23T15:16:58.887 回答
0

NSString *path = [theRecord valueForKey:@"set_number"];

theRecord 是一个不能使用 valueForKey 的 NSString 实例。您应该首先解析您的 xml 字符串并从标签中获取您想要的内容。或者你应该在你的字符串中获取子字符串。

于 2012-08-27T09:43:42.437 回答