DOM4J

package cn.xxx.test;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

public class DOM4JWriter {//实现xml文件的输出
    @SuppressWarnings("deprecation")
    public static void main(String[] args) throws IOException {
        int[] ids=new int[]{10,20,30};
        String[] title=new String[]{"红楼梦","三国演义","水浒传"};
        Double[] price=new Double[]{1.2,2.3,2.4};
        //创建Document对象
        Document document = DocumentHelper.createDocument();
        Element booksElt=document.addElement("books");//设置根元素
        for(int i=0;i<ids.length;i++){
            Element bookElt = booksElt.addElement("book");//创建book节点
            bookElt.addAttribute("id",String.valueOf(ids[i]));
            Element titleElt = bookElt.addElement("title");//创建title节点
            Element priceElt = bookElt.addElement("price");
            titleElt.setText(title[i]);
            priceElt.setText(String.valueOf(price[i]));
        }
        
        //输出格式类
        //OutputFormat format=OutputFormat.createCompactFormat();//紧凑型
        OutputFormat format=OutputFormat.createPrettyPrint();//缩进型
        format.setEncoding("UTF-8");
        //文档输出类
        XMLWriter out=new XMLWriter(new FileOutputStream("d:"+File.separator+"book.xml"),format);
        out.write(document);
        
    }
}
package cn.xxx.test;

import java.io.File;
import java.util.Iterator;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

public class DOM4JReader {//xml文件的读取
     public static void main(String[] args) throws Exception{
        File file=new File("d:"+File.separator+"book.xml");    
        SAXReader sax=new SAXReader();//创建一个SAX解析器对象
        Document document=sax.read(file);
        Element booksElt = document.getRootElement();//获取根元素 books
        List elements = booksElt.elements();
        Iterator it = elements.iterator();
        while(it.hasNext()){
            Element bookElt = (Element) it.next();//book节点
            System.out.print("id="+bookElt.attributeValue("id")+",");//book的id属性
            System.out.print("title="+bookElt.elementText("title")+",");//book的title节点
            System.out.println("price="+bookElt.elementText("price"));
            
        }
     }
}

 

posted @ 2017-10-25 20:29  scwyfy  阅读(148)  评论(0编辑  收藏  举报