0

我有一个如下所示的 XML,

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
 <Entities xmlns="sample">
  <Entity>
    sample Value
   </Entity>
   <ns1:Entity xmlns:ns1="sample">
     sample Value
   </ns1:Entity>
 </Entities>

我用的时候nodeElement.getNodeName();,只能<Entity>拿不到<ns1:Entity>
我验证了这篇文章并尝试getLocalName()了而不是getNodeName(). 它不工作。此外,当我尝试使用时getElementByTagNameNS("Entity","sample"),该 getLength()方法返回 0。

更新:

正如下面的答案中提到的,我交换了getElementByTagNameNS. 我看到了一个使用选项,getElementByTagNameNS("*","Entity")它允许我不在代码中对命名空间进行硬编码。现在想知道,使用*.

4

1 回答 1

1

getElementByTagNameNS("Entity","sample")应该是getElementsByTagNameNS("sample","Entity"),即命名空间名称位于本地名称之前。

您在尝试获取时可能犯了类似的错误,nodeElement.getNodeName()但您没有发布相关代码。

于 2013-03-04T12:52:47.600 回答