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