0

我已经使用以下方法缓存了 url 的内容,并将文本保存为 NSUserDefault,因为我需要在另一个 UIViewController 中访问它。

这是我用来下载 URL 内容并保存为 NSUserDefault 的代码,这是我用来将该 NSUserDefault 的内容加载到 UITableView 中的代码。

//下载 URL 内容并保存到 NSUser 默认值

NSString *url = [[NSString stringWithFormat:@"http://www.pharmacon.site50.net/database/1.xml"] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *myTxtFile = [NSString stringWithContentsOfURL:[NSURL URLWithString:url] encoding:NSUTF8StringEncoding error:&err];
[[NSUserDefaults standardUserDefaults] setObject:myTxtFile forKey:@"one"];

//加载一个 NSUserDefault 并将其放置在 UITextView 中

NSString *myTxtFile = [[NSUserDefaults standardUserDefaults] stringForKey:@"one"];
textView.text=myTxtFile; 

这是我下载的典型 XML 文件的样子;

<item>
<din>1</din>
<category>Drugs</category>
<name>Paracetamol</name>
<phonetic>Pa-ra-ce-ta-mol</phonetic>
<spoken>Paracetamol.mp3</spoken>
<description>
Paracetamol is a drug commonly used for headaches and minor aches and pains.
</description>
<purpose>
Paracetamol is best used for minor to moderate aches and pains and can also be used to treat mild headaches.
</purpose>
<author>Sam Vale</author>
<editor>Harrison Fuller</editor>
</item>

现在,我想要做的是阅读这个 NSUserDefault 但实际上只提取名称区域中的文本(因此在本例中为“扑热息痛”),然后将其放入 UITableView 单元格的文本中,作为按钮或 UILabel(选择您认为最好的或您知道的)。我想这样做的原因是因为我将在 UITableView 中显示从数据库下载的结果。

任何帮助将不胜感激。

4

1 回答 1

0

你需要NSXMLParser这个。有很多关于如何使用它来解析 Internet 上可用的 XML 的示例。

于 2012-04-15T08:36:24.003 回答