所以我有一个我在这里声明的 xml 文档:
DocumentBuilder dBuilder = dbFactory_.newDocumentBuilder();
StringReader reader = new StringReader(s);
InputSource inputSource = new InputSource(reader);
doc_ = dBuilder.parse(inputSource);
然后我有一个函数,我在其中传递一个字符串,我想将它与我的 xml 中的一个元素相匹配:
void foo(String str)
{
NodeList nodelist = doc_.getDocumentElement().getElementsByTagName(str);
}
问题是当它str
进来时没有任何类型的命名空间,所以我要测试的 xml 将是:
<Random>
<tns:node />
</Random>
并且str
将成为节点。所以 nodelist 现在为空,因为它期望 tns:node 但我传入了 node。而且我知道忽略名称空间不好,但在这种情况下它很好。我的问题是我不知道如何在忽略命名空间的同时搜索节点中的元素。我还考虑将命名空间添加到传入的 str 中,但我也不知道该怎么做。
任何帮助将不胜感激,
谢谢,-乔什