我需要你的帮助,我想解析一个 XML 文件,GDataXMLDocument
并且我想获取特定标签的所有属性,但是当我使用或只是提供 XPath 的值来获取 columnHeading 值时
GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithData:[NSData dataWithContentsOfFile:path] encoding:NSUTF8StringEncoding error:NULL];
NSArray *tempArray = [doc nodesForXPath:@"//root/xsd:schema" namespaces:nil error:nil];
它返回以下错误。
XPath 错误:未定义的命名空间前缀 xmlXPathEval:评估失败
这是我的 XML 内容。
<?xml version="1.0" encoding="utf-8"?>
<SH xmlns="urn:schemas-microsoft-com:xml-analysis:rowset">
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:saw-sql="urn:saw-sql" targetNamespace="urn:schemas-microsoft-com:xml-analysis:rowset">
<xsd:complexType name="R">
<xsd:sequence>
<xsd:element name="S0" saw-sql:columnHeading="SID" saw-sql:columnID="0"/>
<xsd:element name="S1" saw-sql:columnHeading="SNAME" saw-sql:columnID="1"/>
<xsd:element name="S2" saw-sql:columnHeading="CLASS" saw-sql:columnID="2"/>
<xsd:element name="S3" saw-sql:columnHeading="ADD" saw-sql:columnID="3"/>
<xsd:element name="S4" saw-sql:columnHeading="CITY" saw-sql:columnID="4"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
从过去 3 天开始就卡在这里。需要你的帮助。
提前致谢。