package com.hailou.test;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
import org.junit.Test;
public class TestXML {
@Test
public void WriteXML() throws IOException{
//创建dom对象
Document dom = DocumentHelper.createDocument();
Element root = dom.addElement("root");
//添加第一类节点
for(int i = 0 ; i<3;i++){
Element perents = root.addElement("user").addAttribute("id", String.valueOf(i));
perents.addElement("name").addText("张三");
perents.addElement("age").addText("30");
}
//添加第二类节点
//以下代码是知道某结点,向此结点插入数据
Element node =root.element("user");// 取得某节点的单个子节点.
Element newNode = node.addElement("流量");
newNode.setText("100");
//end
//格式化输出的xml文件格式。
OutputFormat format = OutputFormat.createPrettyPrint();
/** 指定XML编码 */
format.setEncoding("GBK");
XMLWriter writer= new XMLWriter(new FileOutputStream("person.xml"),format);
//没有格式化文件输出内容
//XMLWriter writer = new XMLWriter(new FileOutputStream());
writer.write(dom);
writer.close();
}
@Test
public void ReadXML() throws Exception{
SAXReader reader = new SAXReader();
Document document = reader.read(new FileInputStream("person.xml"));
Element root = document.getRootElement();
List users = root.elements("user");
for(Object object : users){
Element userElement = (Element)object;
String userId = userElement.attribute("id").getText();
String userName = userElement.element("name").getText();
String userAge = userElement.element("age").getText();
System.out.println("userID:"+userId+":"+userName+":"+userAge);
}
}
}
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
import org.junit.Test;
public class TestXML {
@Test
public void WriteXML() throws IOException{
//创建dom对象
Document dom = DocumentHelper.createDocument();
Element root = dom.addElement("root");
//添加第一类节点
for(int i = 0 ; i<3;i++){
Element perents = root.addElement("user").addAttribute("id", String.valueOf(i));
perents.addElement("name").addText("张三");
perents.addElement("age").addText("30");
}
//添加第二类节点
//以下代码是知道某结点,向此结点插入数据
Element node =root.element("user");// 取得某节点的单个子节点.
Element newNode = node.addElement("流量");
newNode.setText("100");
//end
//格式化输出的xml文件格式。
OutputFormat format = OutputFormat.createPrettyPrint();
/** 指定XML编码 */
format.setEncoding("GBK");
XMLWriter writer= new XMLWriter(new FileOutputStream("person.xml"),format);
//没有格式化文件输出内容
//XMLWriter writer = new XMLWriter(new FileOutputStream());
writer.write(dom);
writer.close();
}
@Test
public void ReadXML() throws Exception{
SAXReader reader = new SAXReader();
Document document = reader.read(new FileInputStream("person.xml"));
Element root = document.getRootElement();
List users = root.elements("user");
for(Object object : users){
Element userElement = (Element)object;
String userId = userElement.attribute("id").getText();
String userName = userElement.element("name").getText();
String userAge = userElement.element("age").getText();
System.out.println("userID:"+userId+":"+userName+":"+userAge);
}
}
}