如何提取NSUserDefault的一部分以放入UITableView,UIButton文本甚至UILabel中



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

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

下载网址内容并保存到 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 中显示我从数据库中下载的结果。

任何帮助将不胜感激。

为此你需要NSXMLParser。有很多关于如何使用它来解析互联网上可用的XML的例子。

最新更新