2

我有一个 XML 结构,如下所示:

<Succeeded p1:type="Edm.Boolean" xmlns:p1="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices">false</Succeeded>

由于我需要能够获取p1:type="Edm.Boolean"属性,因此命名空间前缀可能会有所不同,具体取决于我无法控制的几种力量。我需要弄清楚如何以编程方式从命名空间 URI 中获取前缀。

我已经实现了parser:didStartMappingPrefix:toURI:andparser:didEndMappingPrefix:委托方法,虽然我设置setShouldProcessNamespacesYES,但它们不会被调用。

我是 NSXMLParser 的新手,但不是 iOS 和 XML 的新手。任何关于我应该如何去做的方向都将不胜感激。

4

1 回答 1

3

除了实现委托方法和调用setShouldProcessNamespaces:YESsetShouldReportNamespacePrefixes:YES还应该调用。

此更改将导致调用两个“前缀”协议方法。在那里,您可以捕获命名空间 URI 和前缀并根据需要使用它们。

于 2012-06-08T11:12:54.807 回答