如何将 XML 从 Web 服务解析为 Objective-C 中的 NSArray

How to parse XML from web services into NSArray in Objective-C

我正在尝试将此 xml 解析为我的应用程序,但在我调试时我的 NSDictionary 始终为 nil

这个xml

<DADOS_MESA>
    <MESA>
        <Id>1076</Id>
        <Date>2015-05-08T09:44:25.343</Date>
    </MESA>
<DADOS_MESA>

我从我的 WS 请求这个 XML,

NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://myIP/Services.asmx/GetDetails?CId=02&SId=01"]];

然后我创建一个 NSDictionary

NSDictionary *xml = [NSDictionary dictionaryWithContentsOfURL:url];

NSDictionary 总是出现 nil(我不知道为什么),谢谢

使用: NSXMLParser & Darshan Answer

您可以使用 NSXMLParser 来做到这一点。这是示例代码。

NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://myIP/Services.asmx/GetDetails?CId=02&SId=01"]];
NSXMLParser *parser = [[NSXMLParser alloc] initWithContentsOfURL:url];
parser.delegate = self;
[parser parse];

-(void)parser:(NSXMLParser*)parser didStartElement:(NSString*)elementName namespaceURI:(NSString*)namespaceURI
qualifiedName:(NSString*)qualifiedName attributes:(NSDictionary*)attributeDict
{
    //Use attributeDict to get parsed XML into NSDictionary
}