当前位置: 首页 > article >正文

Document对象

DOM4j中,获得Document对象的方式有三种:

1.读取XML文件,获得document对象            

                   SAXReader reader = new SAXReader();
              Document   document = reader.read(new File("input.xml"));

2.解析XML形式的文本,得到document对象.

                   String text = "<members></members>";
              Document document = DocumentHelper.parseText(text);

3.主动创建document对象.

                  Document document = DocumentHelper.createDocument();
             //创建根节点

                  Element root = document.addElement("members");

Tip:节点对象

1.获取文档的根节点.

      Element root = document.getRootElement();

2.取得某个节点的子节点.

Element element=node.element(“书名");

3.取得节点的文字

      String text=node.getText();

4.取得某节点下所有名为“member”的子节点,并进行遍历.
 List nodes = rootElm.elements("member");
  for (Iterator it = nodes.iterator(); it.hasNext();) {
     Element elm = (Element) it.next();
    // do something
 }

5.对某节点下的所有子节点进行遍历.

for(Iterator it=root.elementIterator();it.hasNext();){

       Element element = (Element) it.next();

       // do something
    }

6.在某节点下添加子节点.

Element ageElm = newMemberElm.addElement("age");

7.设置节点文字.

 element.setText("29");

8.删除某节点.

//childElm是待删除的节点,parentElm是其父节点

parentElm.remove(childElm);

9.添加一个CDATA节点.
Element contentElm = infoElm.addElement("content");

contentElm.addCDATA(diary.getContent());

​​​​​​​节点对象属性

1.取得某节点下的某属性
    Element root=document.getRootElement();    

//属性名name

         Attribute attribute=root.attribute("size");

2.取得属性的文字

   String text=attribute.getText();

 3.删除某属性
 Attribute attribute=root.attribute("size");

 root.remove(attribute);

3.遍历某节点的所有属性

   Element root=document.getRootElement();   

  for(Iterator it=root.attributeIterator();it.hasNext();){

         Attribute attribute = (Attribute) it.next();

         String text=attribute.getText();

         System.out.println(text);

    }

4.设置某节点的属性和文字.

   newMemberElm.addAttribute("name", "sitinspring");

5.设置属性的文字

  Attribute attribute=root.attribute("name");

   attribute.setText("sitinspring");


http://www.kler.cn/a/563579.html

相关文章:

  • docker 安装 seafile 企业云盘
  • flask 是如何分发请求的?
  • PHP-create_function
  • 【linux配置】 修改内核网络参数
  • Unity基础——世界坐标系(Global)和本地坐标系(Local)
  • 安装react报错
  • 003 SpringBoot集成Kafka操作
  • Spring MVC 面试题及答案整理,最新面试题
  • MySQL压缩版安装详细图解
  • 如何使用Java爬虫按关键字搜索VIP商品实践指南
  • 点云配准技术的演进与前沿探索:从传统算法到深度学习融合(2)
  • 学习笔记06——JVM调优
  • 【算法】797. 差分
  • 蓝桥杯嵌入式客观题以及解释
  • 谷歌推出PaliGemma 2 mix:用于多任务的视觉语言模型,开箱即用。
  • 计算机毕业设计SpringBoot+Vue.js民宿在线预定平台(源码+文档+PPT+讲解)
  • Docker 搭建 Gitlab 服务器 (完整详细版)
  • Nmap使用指南
  • Qt 开源音视频框架模块之QtAV播放器实践
  • 【MySQL】索引(上)