如何使用 NSXMLParser 解析 XML 文件

问题描述 投票:0回答:3

我有一个名为 example.xml 的文件,我需要使用

NSXMLParser
检索该文件中的内容。我之前尝试通过 URL 解析 XML 文件,但现在我有一个 XML 文件。有人可以告诉我当我有文件时如何解析吗?我正在使用 Xcode4 和 iOS SDK 4.3 提前致谢。

objective-c cocoa-touch ios nsxmlparser
3个回答
2
投票

当您使用 URL 解析数据时,您应该执行类似的操作:

NSXMLParser *parser = [[NSXMLParser alloc] initWithData:[NSData dataWithContentsOfURL:<#(NSURL *)#>]];

// Tell NSXMLParser that this class is its delegate
[parser setDelegate:self];


[parser setShouldProcessNamespaces:NO]; 
[parser setShouldReportNamespacePrefixes:NO]; 
[parser setShouldResolveExternalEntities:NO];   

// Kick off file parsing
[parser parse];

//[parser setDelegate:nil];
[parser release];

要解析文件,您只需转换第一行并将

[NSData dataWithContentsOfURL:<#(NSURL *)#>]
替换为
[NSData dataWithContentsOfFile:<#(NSString *)#>]
,其中
NSString
是文件的路径。


1
投票

您可以使用这个代替网址

NSURL *baseURL = [NSURL fileURLWithPath:[[NSBundle mainBundle]pathForResource:@"temp" ofType:@"xml"]];
NSURL *baseURL=[NSURL URLWithString:url];

1
投票

您可以查看以下教程来阅读和解析 Objective-C 中的

XML
文件。

在 iOS 中读取 XML 文件。

目标 C:解析 XML 文件

© www.soinside.com 2019 - 2024. All rights reserved.