如何在文档中下载和保存 xml,然后如何从文档中解析 xml 文件?
Posted
技术标签:
【中文标题】如何在文档中下载和保存 xml,然后如何从文档中解析 xml 文件?【英文标题】:how to Download and save xml in documents and then how to parse xml file from documents? 【发布时间】:2011-03-11 01:46:34 【问题描述】:在我的应用程序中,我必须解析从互联网下载的 xml 文件。如何下载此 xml 并保存在 iphone 上的文档中?那么如何开始解析保存在文档中的 XML 呢?
【问题讨论】:
【参考方案1】:第一次加载时将内容下载到NSData
对象。使用任一方法将其保存到磁盘
– writeToFile:atomically:
– writeToFile:options:error:
这里的 NSData 类参考中有描述:http://developer.apple.com/mac/library/documentation/Cocoa/Reference/Foundation/Classes/NSData_Class/Reference/Reference.html#//apple_ref/occ/instm/NSData/writeToFile:atomically:
当您想从磁盘加载它时,请使用[NSData dataWithContentsOfFile:]
再次将其加载到 NSData 对象中。
至于将 NSData 解析为 XML,请查看这个非常非常常见问题的其他答案,例如How do I parse an NSString containing XML in Objective-C?
【讨论】:
【参考方案2】:你的意思是这样的
NSString *URLString = @"http://www.example.com/XML/note.xml";
NSURL *URL = [NSURL URLWithString:
[URLString stringByAddingPercentEscapesUsingEncoding:
NSASCIIStringEncoding]];
NSData *dataXML = [NSData dataWithContentsOfURL:URL];
NSString *applicationDocumentsDir =
[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSString *storePath = [applicationDocumentsDir stringByAppendingPathComponent:@"sample.xml"];
[dataXML writeToFile:storePath atomically:TRUE];
NSData *contenuto = [NSData dataWithContentsOfFile:storePath];
NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:contenuto]
【讨论】:
在我看来并不太破旧。它出什么问题了? (请更新您的答案并对我的答案发表评论,而不是回答您的问题 - 当您这样做时我没有收到通知,所以我无法做出反应。)以上是关于如何在文档中下载和保存 xml,然后如何从文档中解析 xml 文件?的主要内容,如果未能解决你的问题,请参考以下文章