我不知道为什么但是dom4j没有加载xmlns属性,例如:
xmlns =“http://webservices.example.com/servicesplatform/command/1.0.0”xmlns:xsi =“http://www.w3.org/2001/XMLSchema-instance”
其他属性正常加载,但只是被忽略 . 我使用属性Iterator检查所有属性的所有属性 .
我是如何阅读这个xml的例子:
SAXReader reader = new SAXReader();
Document document = reader.read(file);
return document;
我不知道我甚至可以尝试什么 . :(任何想法如何从xml文件中获取此属性?:(
编辑:我像这样迭代他们
public void getAllAttributes(Element element) {
Iterator<Attribute> attributeterator = element.attributeIterator();
while (attributeterator.hasNext()) {
Attribute attribute = iteratorAttribute.next();
System.out.println(attribute.getQualifiedName() + " " + , attribute.getValue());
}
}
3 回答
您可以通过获取默认命名空间
element.getNamespace()
可以使用获取所有其他名称空间
element.additionalNamespaces()
我正在使用dom4j 2.1.0,以下代码用于获取默认命名空间:
它返回:
http://webservices.example.com/servicesplatform/command/1.0.0
您可以使用以下命令获取所有名称空间对象:
xmlns
属性是Namespace's
. 要使用Dom4j
阅读它们,您可以根据需要使用以下两种方法中的任何一种:Namespace.get(String uri)
Namespace.get(String prefix, String uri)