关闭

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

标签: xmlimportiteratorexceptionstringlist
2899人阅读 评论(1) 收藏 举报
分类:

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());
  }
 }
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:64359次
    • 积分:907
    • 等级:
    • 排名:千里之外
    • 原创:26篇
    • 转载:2篇
    • 译文:0篇
    • 评论:14条
    文章分类
    最新评论