dom4j学习笔记[3]---获取、修改XML元素

原创 2006年05月30日 16:03:00

1. 遍历笔记[1]中生成的xml文件,并对其进行修改,代码如下:

import java.io.IOException;
import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import org.dom4j.io.SAXReader;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Node;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.Attribute;
 
public class Parse_2 {

 public Document parse(String sfile) throws DocumentException {
        SAXReader reader = new SAXReader();
        Document document = reader.read(new File(sfile));
        return document;
    }
 
 public void bar(Document document) throws IOException {


        List list = document.selectNodes( "//author" );
  Iterator iter=list.iterator();
  
  System.out.println("/r/n****** 获取的数据如下 ******");
  while(iter.hasNext()){
   Element titleElement=(Element)iter.next();
   // 修改xml元素
   if(titleElement.getText().equals("James Strachan")) {
    titleElement.setText("Faint Heipark");
   }
   System.out.print(titleElement.valueOf( "@name" ) + ":");
   System.out.println(titleElement.getText());
  }
  
  // 输出全部原始数据
  OutputFormat format = OutputFormat.createPrettyPrint();
        XMLWriter writer = new XMLWriter( System.out, format );
  System.out.println("/r/n------------------Start------------------");
        writer.write( document );
  System.out.println("/r/n-------------------End-------------------");
    }

 public static void main(String[] args) {
  Parse_2 dom4j = new Parse_2();
  try {
   dom4j.bar(dom4j.parse("c://output.xml"));

  } catch (Exception e) {
   System.out.println(e.getMessage());
  }
 }
}

dom4j修改,获取,增加xml中某个元素的属性值

xml文件: 修改属性值: 要把每个item元素的“isSelf”属性值修改为“y” // 获取XML Document docume...
  • liuweiyuxiang
  • liuweiyuxiang
  • 2017年02月27日 22:08
  • 1451

dom4j解析xml中指定元素下内容

需求:XML为如下样式,现在我只想取得timer下面的5000和60000. 解决办法如下: Id name sfz w 5000 60000 ...
  • xiongwt
  • xiongwt
  • 2015年06月04日 14:59
  • 1581

DOM4J 实现对XML文档的增、删、改、查

前言:首先谈一个小故事:当年Java准备做对XML的解析时,对解析器的实现方向在内部发生了争执,后来高层没有听从工程师建议,坚持开发出了JDOM,而主要的工程师选择离开Java 按照自己的方式实现,就...
  • fightfaith
  • fightfaith
  • 2015年12月14日 23:34
  • 2822

dom4j向xml中插入新的元素

package com.huawei.test; import java.io.File; import java.io.FileOutputStream; import java.ut...
  • lifeijiyuan126
  • lifeijiyuan126
  • 2011年10月16日 13:50
  • 3109

Dom4j增加,修改,删除XML文件

一.如何配置Dom4j xml解析: 点击查看 二.修改项目类内容 1.)增加:文档,标签,属性 2.)修改:属性值,文本 3.)删除:标签,属性 1.)增加:文档,标签,...
  • Mr_Huan
  • Mr_Huan
  • 2017年01月08日 12:05
  • 1845

Java DOM4J读取XML

DOM4J是dom4j.org出品的一个开源XML解析包。Dom4j是一个易用的、开源的库,用于XML,XPath和XSLT。它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JA...
  • xumengxing
  • xumengxing
  • 2013年03月28日 23:03
  • 9520

Android使用Dom4j解析xml,并存入自定义实体

说到解析xml,相信大家都知道Android中的三中解析方式,这里就不在多做介绍了,说一下最近刚刚用的dom4j吧,dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。do...
  • u012077817
  • u012077817
  • 2015年11月19日 09:15
  • 2580

利用dom4j学习xml(三) 修改子节点的属性值

Document document;  SAXReader reader = new SAXReader();  String path=ServletActionContext.getRequest...
  • qdgengwenfei
  • qdgengwenfei
  • 2011年06月09日 11:45
  • 3659

dom4j 修改xml并写入磁盘

public class LogWriter { private static final String PATH = "e://log.xml"; /** * 写入log.xml *...
  • lezong2011
  • lezong2011
  • 2014年12月19日 13:25
  • 719

Dom4j解析xml文件-递归遍历所有节点和属性

引言        Dom4j是java中常用读取xml文件的工具,就方便性和性能方面,一定程度要优于JDK中Domcument和SAX解析的,感兴趣的童鞋可以看看这篇文章 java解析XML的四种方...
  • chenleixing
  • chenleixing
  • 2015年03月17日 22:00
  • 57232
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:dom4j学习笔记[3]---获取、修改XML元素
举报原因:
原因补充:

(最多只允许输入30个字)