`
747017186
  • 浏览: 317593 次
社区版块
存档分类
最新评论

dom4j解析带命名空间的xml

    博客分类:
  • xml
 
阅读更多

当我们解析xml的时候,如果该xml没有带命名空间,那么很好解析,直接用dom4j的selectNodes(XPath表达式)既可以了。但是如果命名空间那么则会返回空。下面为大家介绍三种方法来解决:

第一种:

<report   xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.15" id="1">
    <list-property name="cssStyleSheets">
        <structure>
            <property name="fileName">D: eport.css</property>
        </structure>
    </list-property>
</report>
第一个方案.设置你的xpath的命名空间setNamespaceURI

 

public class TransferXML {
    public static void main(String[] args) throws Exception\">{<br style=//design:list-property");//填写XPath表达式
         x.setNamespaceURIs(map);//设置命名空间
         List nodelist = x.selectNodes(document);//取出符合规定的集合
         System.out.println(nodelist.size());
     }
}
 
第二种:设置你的DocumentFactory()的命名空间 setXPathNamespaceURIs
public class TransferXML {
    public static void main(String[] args) throws Exception{
         Map map = new HashMap();
         map.put("design","http://www.eclipse.org/birt/2005/design");//填充map
         SAXReader saxReader = new SAXReader();
         File file = new File("D:\test.xml");
         saxReader.getDocumentFactory().setXPathNamespaceURIs(map);//设置命名空间
         Document document = saxReader.read(file);
         List tmp = document.selectNodes("//design:list-property");//用XPath选取节点
         System.out.println(tmp.size());
     }
}
详细请参考:http://blog.sina.com.cn/s/blog_4bf2e5550100sbb7.html
分享到:
评论

相关推荐

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

    NULL 博文链接:https://qiaokeli.iteye.com/blog/1790138

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

    Java使用sax、dom、dom4j解析xml文档的代码,包含dom4j的jar包。

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

    NULL 博文链接:https://superich2008.iteye.com/blog/1750287

    Java用DOM4J读取XML

    做Java课程设计有用到的例子,是个一看就能上手的例子。

    DOM4J从基础到精通

    三、使用dom4j解析xml文件 5 1. 构建dom4j树 5 2. 获取节点 5 3. 获取属性 6 4. 使用XPath获取节点和属性 6 四、使用dom4j修改xml文件 7 五、常用方法 8 1.Element元素API 8 2. Attribute属性API 8 2. 字符串转化 8...

    XML文档生成与解析

    通过 利用 java 以及 dom4j 来进行XML 文件的 生成与 解析操作。代码简单易懂。

    day023-xml解析笔记和代码.rar

    由于DOM4J在解析XML时只能一层一层解析,所以当XML文件层数过多时使用会很不方便, 结合XPATH就可以直接获取到某个元素 使用dom4j支持xpath的操作的几种主要形式 第一种形式 /a/b/c: 表示一层...

    xml入门经典-part3(中文版)

    第4章 数据建模与XML 4.1 信息建模 4.1.1 静态模型和动态模型 4.1.2 文档和数据 4.1.3 从何处开始 4.1.4 静态信息模型 4.1.5 动态建模:对数据进行哪些处理? 4.2 设计XML文档 4.2.1 XML的两种角色 4.2.2 ...

    XML高级编程pdf

    1.6.6 命名空间和模式 1.6.7 链接和查询 1.6.8 转换XML 1.6.9 XML和数据库 1.6.10 服务器到服务器 1.6.11 电子商务与XML 1.6.12 使用样式 1.6.13 无线应用程序协议和WML 1.7 XML的应用程序举例 1.8 小结 ...

    XML 高级编程(高清版)

    1.6.6 命名空间和模式 1.6.7 链接和查询 1.6.8 转换XML 1.6.9 XML和数据库 1.6.10 服务器到服务器 1.6.11 电子商务与XML 1.6.12 使用样式 1.6.13 无线应用程序协议和WML 1.7 XML的应用程序举例 1.8 小结 ...

    XML高级编程 (Extensible Markup Language)

    1.6.6 命名空间和模式 1.6.7 链接和查询 1.6.8 转换XML 1.6.9 XML和数据库 1.6.10 服务器到服务器 1.6.11 电子商务与XML 1.6.12 使用样式 1.6.13 无线应用程序协议和WML 1.7 XML的应用程序举例 1.8 小结 ...

    xml入门教程/xml入门教程

    DTD不支持命名空间,解析器无法测试命名空间。 1、作用: 解决XML文档中命名冲突的问题,即将 XML文档与引用URI标识的名域相结合,来 限定其中的元素和属性名。 示例: &lt;?xml version="1.0" encoding="UTF-8" ...

    XML高级编程

    1.6.6 命名空间和模式 14 1.6.7 链接和查询 15 1.6.8 转换XML 15 1.6.9 XML和数据库 16 1.6.10 服务器到服务器 16 1.6.11 电子商务与XML 17 1.6.12 使用样式 18 1.6.13 无线应用协议和WML 18 1.7 XML的应用程序举例 ...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    3.2.4 用dom解析xml文档实例 53 3.3 使用sax解析xml文档 65 3.3.1 sax的处理机制 66 3.3.2 配置sax解析器 69 3.3.3 sax解析器工厂 70 3.3.4 sax的异常类 71 3.3.5 errorhandler接口 73 3.3.6 使用sax解析xml...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    3.2.4 用dom解析xml文档实例 53 3.3 使用sax解析xml文档 65 3.3.1 sax的处理机制 66 3.3.2 配置sax解析器 69 3.3.3 sax解析器工厂 70 3.3.4 sax的异常类 71 3.3.5 errorhandler接口 73 3.3.6 使用sax解析xml...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    3.2.4 用dom解析xml文档实例 53 3.3 使用sax解析xml文档 65 3.3.1 sax的处理机制 66 3.3.2 配置sax解析器 69 3.3.3 sax解析器工厂 70 3.3.4 sax的异常类 71 3.3.5 errorhandler接口 73 3.3.6 使用sax解析xml...

    C#XML入门经典 C#编程人员必备的XML技能.part2

    在.NET中使用XML &lt;br&gt;3.1 XML如何适合.NET 3.1.1 XML 3.1.2 文档对象模型(DOM) 3.1.3 命名空间 3.1.4 DTD和XML Schema 3.1.5 XPath 3.1.6 XSLT 3.2 .NET Framework使用XML 3.2.1 配置...

    XML入门教程

    xml的入门教程,适合初学者 1 XML 简介 2 XML 的用途 3 XML 树结构 4 XML 语法规则 5 XML 元素 ...18 XML 命名空间(XML Namespaces) 19 XML CDATA 20 XML 编码 21 XML DOM 高级 22 XML Don't

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    XML越来越热,关于XML的基础教程网络上也随处可见。可是一大堆的概念和术语往往让人望而生畏,很多朋友问我:XML到底有什么用,我们是否需要学习它?我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章。...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    3.2.4 用dom解析xml文档实例 53 3.3 使用sax解析xml文档 65 3.3.1 sax的处理机制 66 3.3.2 配置sax解析器 69 3.3.3 sax解析器工厂 70 3.3.4 sax的异常类 71 3.3.5 errorhandler接口 73 3.3.6 使用sax解析xml...

Global site tag (gtag.js) - Google Analytics