dom4j解析XML文件(3)—XML文件写入
直接上源码:
1 package testReadXML; 2 3 import java.io.File; 4 import java.io.FileOutputStream; 5 import java.io.OutputStreamWriter; 6 import java.io.Writer; 7 8 import org.dom4j.Document; 9 import org.dom4j.DocumentHelper; 10 import org.dom4j.Element; 11 import org.dom4j.io.XMLWriter; 12 13 /** 14 * 利用dom4j将信息写入XML文件 15 */ 16 public class WriteXML { 17 public static void main(String[] args) throws Exception { 18 Document doc = DocumentHelper.createDocument();//通过静态方法创建document对象 19 Element root = doc.addElement("list");//添加根元素 20 Element emp1 = root.addElement("emp");//添加子元素 21 Element emp2 = root.addElement("emp");//添加子元素 22 Element emp3 = root.addElement("emp");//添加子元素 23 Element emp4 = root.addElement("emp");//添加子元素 24 Element emp5 = root.addElement("emp");//添加子元素 25 emp1.addAttribute("id", "1");//为该元素添加属性,属性名为id,属性值为1 26 emp2.addAttribute("id", "2");//为该元素添加属性,属性名为id,属性值为1 27 emp3.addAttribute("id", "3");//为该元素添加属性,属性名为id,属性值为1 28 emp4.addAttribute("id", "4");//为该元素添加属性,属性名为id,属性值为1 29 emp5.addAttribute("id", "5");//为该元素添加属性,属性名为id,属性值为1 30 Element name1 = emp1.addElement("name");//添加子元素 31 name1.addText("张三");//添加该元素的文本 32 Element name2 = emp2.addElement("name");//添加子元素 33 name2.addText("李四");//添加该元素的文本 34 Element name3 = emp3.addElement("name");//添加子元素 35 name3.addText("王五");//添加该元素的文本 36 Element name4 = emp4.addElement("name");//添加子元素 37 name4.addText("赵六");//添加该元素的文本 38 Element name5 = emp5.addElement("name");//添加子元素 39 name5.addText("钱七");//添加该元素的文本 40 //***************XML输出************** 41 //方法1,不用设置文字编码,输出为紧缩型 42 XMLWriter writer = new XMLWriter(); 43 FileOutputStream fos1 = new FileOutputStream(new File("emp1.xml")); 44 writer.setOutputStream(fos1); 45 writer.write(doc); 46 writer.close(); 47 //方法2,需要设置文字编码,输出为紧缩型 48 FileOutputStream fos2 = new FileOutputStream(new File("emp2.xml")); 49 Writer w = new OutputStreamWriter(fos2,"utf-8"); 50 doc.write(w); 51 w.close(); 52 //还有其他的输出方法,不做过多的研究,到此为止。 53 } 54 }