zoukankan      html  css  js  c++  java
  • Jdom与Dom4j解析器

    Jdom
    Dom4j

    JDOM自身不包含解析器。
    它通常使用SAX2解析器来解析和验证输入XML文档

    Dom4j自身也不包含解析器 也使用SAX解析器,Dom4j 原本是Jdom的分支 很多方法功能相同 名字不同

    --------------------------------------------------------------------------------------


    Jdom使用步骤:

    读取xml文档:
    SAXBuilder builder=new SAXBuilder();//创建解析器对象
    Document document=builder.build(String path);//解析xml文件

    写入xml文档:
    XMLOutputter outputer=new XMLOutputter(Format.getPrettyFormat()); //创建输出类 并指定输出格式
    outputer.output(document, new FileOutputStream(String path ));//参数1为已经设置完节点和内容的document,参数2为文件输出流


    Document类常用方法:
    Document(); 得到一个空的document对象
    getRootElement(); 返回根节点


    Element 类常用方法:
    getChildren(); 得到该节点下的所有子节点
    getChild(String ChildName) 得到指定名称的子节点
    getChildText(String ChildName) 得到指定子节点的文本
    getAttributeValue(String AttributeName) 得到指定元素的值
    setText(String Text); 设置该元素的文本
    setAttribute(String AttributeName,String AttributeValue ) 设置属性值
    addContent(Element Child) 添加子元素

    -------------------------------------------------------------------------------------

    Dom4j使用步骤:

    读取xml文档:
    SAXReader reader=new SAXReader();//创建解析器对象
    Document document=reader.read(String path);//解析xml文件

    写入xml文档:
    Document document=DocumentHelper.createDocument(); 创建空Document对象
    XMLWriter writer=new XMLWriter(new FileOutputStream(String path), OutputFormat.createPrettyPrint());
    //创建输出器 第一个参数为文件输出流 第二个参数为输出格式
    writer.write(document); 将设置完节点和值的document对象输出
    writer.close(); 关闭输出器


    Document类常用方法:
    getRootElement(); 返回根节点
    elements() 得到该节点下的所有子节点
    addElement(String Name):给当前节点添加子节点 返回一个Element对象

    Element 类常用方法:
    elementText(String Name) 得到指定子节点的文本值
    element(String Name) 得到指定子节点
    getText() 得到该节点的文本值
    attributeValue(String Name) 得到指定属性的值
    addElement(String Name):给当前节点添加子节点 返回一个Element对象
    setText(String value) 设置节点的文本值
    addAttribute(String name, String value); 给节点添加一个属性

  • 相关阅读:
    Spring Boot 2 (七):Spring Boot 如何解决项目启动时初始化资源
    Spring Boot 2 (八):Spring Boot 集成 Memcached
    Spring Boot 2 (五):Docker Compose + Spring Boot + Nginx + Mysql 实践
    Spring Boot 2 (六):使用 Docker 部署 Spring Boot 开源软件云收藏
    Spring Boot 2 (四):使用 Docker 部署 Spring Boot
    微信开发中,不同手机系统遇到的bug(不定时更新)
    gulp-sourcemaps的用法
    实现输入框高度随内容变化
    微信开发,浏览器缓存问题
    mac中nvm的安装和使用
  • 原文地址:https://www.cnblogs.com/java888/p/10436815.html
Copyright © 2011-2022 走看看