`
shicheng
  • 浏览: 165745 次
  • 性别: Icon_minigender_1
  • 来自: 泉州
社区版块
存档分类
最新评论

如何读带命名空间的xml文件

阅读更多
xml文件如下:

<xs:report  xmlns:xs="http://www.eclipse.org/birt/2005/design">
    <xs:list-property name="cssStyleSheets">
        <xs:structure>
            <xs:property name="fileName">test.txt</xs:property>
        </xs:structure>
    </xs:list-property>
</xs:report>


一、使用dom4j

SAXReader saxReader = new SAXReader();
  File file = new File("f://report.xml");
  Document document = saxReader.read(file);
  List tmp = document
    .selectNodes("//*[local-name()='report' and namespace-uri()='http://www.eclipse.org/birt/2005/design']/* [local-name()='list-property']");//report,list-property属于上下级关系
  Element e =(Element) tmp.get(0);
  System.out.println(e);


二、使用jdom

SAXBuilder sb = new SAXBuilder();
  Document doc = sb.build("f://report.xml"); // 构造文档对象
  Element root = doc.getRootElement(); // 获取根元素
  System.out.println(root);
  Namespace xhtml = Namespace.getNamespace("xs",
    "http://www.eclipse.org/birt/2005/design");
  Element es = root.getChild("list-property", xhtml);
  System.out.println(es);
分享到:
评论

相关推荐

    dom4j 读取带有命名空间的xml文件

    在处理带有命名空间的XML文件时,DOM4J库显得尤为重要,因为XML命名空间是XML规范中一个关键的概念,用于避免元素名称的冲突。 XML命名空间的引入是为了在一个文档中使用来自不同来源的元素和属性。它们通过URI...

    WebApi返回xml格式时去除命名空间

    XML命名空间是为了避免元素名称冲突而引入的概念,它为XML文档中的元素提供了唯一的标识。然而,在某些场景下,例如与JavaScript或简单的数据解析应用集成时,我们可能希望去掉这些命名空间以简化处理。 要实现这个...

    XML的命名空间

    XML的命名空间

    python xml命名空间

    本文将详细介绍Python中如何处理XML命名空间,包括理解命名空间的基本概念、如何定义和使用命名空间前缀以及如何在Python代码中操作带有命名空间的XML文档。 #### 一、命名空间简介 命名空间是XML文档中用来区分...

    带命名空间的XML增删改查操作实例

    本实例主要涉及如何在XML文档中进行带有命名空间的操作,包括增、删、改、查等常见操作。 首先,理解XML命名空间的基本概念。命名空间通过一个URI(Uniform Resource Identifier)来唯一标识,通常以`xmlns:`前缀...

    WebApi去除XML命名空间

    XML命名空间是一种用于解决XML文档中元素和属性名称冲突的方法。它们通过使用URI(统一资源标识符)作为唯一标识,为元素和属性提供上下文。然而,在某些情况下,我们可能希望在返回给客户端的XML数据中避免这些命名...

    C#操作查询读写有命名空间的XML经典例子

    用C#写的自认为很经典的操作XML的例子,附代码和XML文件。包含查询,修改的几种方法,还包括查询有命名空间的XML节点的内容。包里的XML文件要复制到C:\TEMP目录下,或者自己在程序里改路径要不找不到XML文件。

    WCF 返回XML去除默认命名空间实例Demo

    在这些文件中,我们需要找到与XML序列化相关的部分,可能是通过自定义`XmlSerializerFormatAttribute`或调整服务行为配置来去除默认命名空间。 **说明文档.docx** 应该详细解释了如何修改代码和配置以达到去除默认...

    XML 命名空间(XML Namespaces).pdf

    它通过给元素和属性名称附加命名空间的方式,区分不同来源的同名元素,从而能够在一个XML文档中混合使用多个不同的XML文档片段。 命名空间的基本语法是在XML元素的开始标签中使用xmlns属性,或者带有前缀的xmlns...

    Java使用sax、dom、dom4j解析xml文档

    SAX是一种基于事件驱动的解析器,它不会一次性加载整个XML文档到内存,而是逐行读取,当遇到某个元素、属性或其他结构时,会触发相应的事件处理器方法。这种方式适用于处理大型XML文档,因为它占用的内存较小。然而...

    xml内容解析,包含命名空间时需特殊处理(dom4j)

    2. **读取XML文档**:使用SAXReader的`read()`方法加载XML文件。 ```java Document document = reader.read(new File("temp.xml")); ``` 3. **处理带有命名空间的元素**:DOM4J提供了Element类,我们可以用它来...

    XPATH读取有命名空间的节点

    总结来说,处理带有命名空间的XML文档,特别是在使用XPath时,需要理解XML命名空间的概念,掌握DOM4J的命名空间注册方法,并能够正确构造XPath表达式。这样,即使面对复杂的XML结构,也能游刃有余地进行数据提取和...

    生成XML文件ABAP程序

    虽然示例代码中这部分被注释掉了,但设置命名空间对于确保XML文档符合特定模式是非常重要的。例如,可以使用`l_element_ArchiveBatch-&gt;set_attribute(name = 'xmlns:xsi', value = '...

    winform 使用XML命名空间源码

    在WinForm应用中,我们可以利用XML命名空间来处理XML文件,实现数据的读取、写入和解析。本资源包含的源码展示了如何在WinForm程序中有效地使用XML命名空间。 XML命名空间用于避免XML元素名称的冲突,它通过URI...

    Python利用命名空间解析XML文档

    在Python中,解析XML文档时,如果XML文档中使用了命名空间(Namespace),则需要特殊的方法来正确处理这些命名空间,以便能够有效地查询和操作XML元素。命名空间在XML文档中用于区分具有相同标签但来自不同来源的...

    Axis2 SOAP XML报文节点首字母小写转大写,节点命名空间前缀添加与剔除(JAVA)

    最后,将修改后的文档写入新的XML文件。 其次,处理SOAP XML报文中的命名空间前缀,有时我们需要添加或剔除命名空间前缀。添加命名空间前缀可以使用`setAttributeNS`方法,而剔除则需要在创建元素时避免指定前缀。...

    通过Schema验证XML格式是否正确

    4. **System.Xml命名空间**:C#的System.Xml命名空间提供了处理XML文档的类和方法,如XmlSchema和XmlDocument,它们可用于加载和验证XML Schema以及读取和操作XML文档。 5. **XmlSchema类**:该类用于加载和处理XML...

    C#操作--创建XML文档

    首先,创建XML文档的核心在于使用C#的System.Xml命名空间,其中包含了多种类,如XmlDocument、XmlElement、XmlNode等,它们为XML文档的操作提供了丰富的功能。要创建一个简单的XML文档,可以按照以下步骤进行: 1. ...

Global site tag (gtag.js) - Google Analytics