首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >枚举XML提要中的thru项

枚举XML提要中的thru项
EN

Stack Overflow用户
提问于 2016-07-06 18:24:49
回答 1查看 48关注 0票数 1

我有一个集合视图,它显示XML提要的结果。它工作得很好,但我需要在本地保存XML提要的结果(例如,如果没有可用的internet连接)。

我知道如何在本地保存原始提要,但我认为我真正需要做的是通过XML中的项目进行迭代,并将每个条目保存为NSData项

这是正确的思考方式,还是你有任何有用的建议或建议?

代码语言:javascript
复制
- (void)startParsing
{
    NSXMLParser *xmlparser = [[NSXMLParser alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://images.apple.com/main/rss/hotnews/hotnews.rss#sthash.TyhRD7Zy.dpuf"]];
    [xmlparser setDelegate:self];
    [xmlparser parse];
    if (_marrXMLDataCollection.count != 0) {
        // Save XML to NSData items in background?

        [self.collectionView reloadData];
    }
}

下面是提要的一个示例,我将它作为localdata.plist存储在Documents目录中:

代码语言:javascript
复制
(
        {
        link = "\nhttp://www.apple.com/pr/library/2016/04/26Apple-Reports-Second-Quarter-Results.html?sr=hotnews.rss";
        pubDate = "\nTue, 26 Apr 2016 14:44:21 PDT";
        title = "\nApple Reports Second Quarter Results";
    },
        {
        link = "\nhttp://www.apple.com/final-cut-pro/in-action/trim-editing/?sr=hotnews.rss";
        pubDate = "\nWed, 20 Apr 2016 10:05:59 PDT";
        title = "\n\nFinal Cut Pro X helps small company delight world\U2019s biggest clients";
    },
        {
        link = "\nhttp://www.apple.com/ipad-pro/?sr=hotnews.rss";
        pubDate = "\nMon, 21 Mar 2016 12:00:03 PDT";
        title = "\n\nApple Introduces 9.7-inch iPad Pro";
    },
        {
        link = "\nhttp://www.apple.com/iphone-se/?sr=hotnews.rss";
        pubDate = "\nMon, 21 Mar 2016 11:58:09 PDT";
        title = "\n\nApple Introduces iPhone SE \U2014 the Most Powerful Phone with a 4-inch Display";
    },
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-15 14:19:10

您可以直接将XML保存到文件中,既可以是二进制数据,也可以是文本。你不需要打开它并把它转换成任何东西。稍后,您可以加载罚款并重新运行您的解析代码。这是最小的代码选项。运行时成本更高,但除非XML文件相当大,否则您不会注意到两者之间的差异。

如果您想保存已处理的内容,那么您的XML应该被转换成一个模型对象数组,您可以在这些模型对象上实现NSCoding,以便将它们存档到磁盘中。这应该是更有效的运行时,但也是更多的代码。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38231144

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档