package oracle.erp.test;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
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.XMLWriter;
public class Dom4jTest {
public static void main(String[] args) {
String strXml = "<学生信息><学生><编号>001</编号><姓名>张三</姓名>"
+ "<年龄>23</年龄></学生></学生信息>";
try {
ReadAndWriteXml(strXml);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* Description:读取并修改xml,写入文件
* @param strXml xml String
* @throws DocumentException
*/
public static void ReadAndWriteXml(String strXml) throws Exception {
Document doc = null;
Element rootElement = null;
doc = DocumentHelper.parseText(strXml);// 创建 document.
rootElement = doc.getRootElement();
Element newStudent = DocumentHelper.createElement("学生");
newStudent.add(DocumentHelper.createElement("编号").addText("002"));
newStudent.add(DocumentHelper.createElement("姓名").addText("李四"));
newStudent.add(DocumentHelper.createElement("年龄").addText("24"));
rootElement.add(newStudent);
System.out.println(doc.asXML());
// 写文件
OutputFormat format = OutputFormat.createPrettyPrint();// 创建美化格式
format.setEncoding("utf-8");
XMLWriter studentwriter = null;
studentwriter = new XMLWriter(
new FileOutputStream(new File("c:/student.xml")), format);// 向"c:\"下写入student.xml文件
studentwriter.write(doc);// 写XML文档
studentwriter.close();
}
}
|