Posted on 2006-11-10 08:53
久城 閱讀(6211)
評論(1) 編輯 收藏 所屬分類:
Java理解筆記
首先導入dom4j.jar包,這個包里面有我們創建XML文件需要用到的類,比如常用的有:
Document:
import org.dom4j.Document;
Import org.dom4j.DocumentHelper;
DocumentHelper.createDocument(); 獲得文檔對象
addElement方法增加根節點
getRootElement方法獲得根節點
asXML方法將文檔對象包含的內容轉換為字符
addComment方法在增加注釋
getPath方法獲得路徑,根節點為/
Element:
import org.dom4j.Elemet;
addElement方法增加子節點
addAttribute方法增加屬性
getName方法獲得節點名稱
asXML方法將文檔對象包含的內容轉換為字符
addComment方法在增加注釋
getPath方法獲得路徑
addText方法增加節點值
setText方法設置節點值
addNamespace方法增加命名空間
attributeCount方法獲得屬性個數
attributeValue方法獲得屬性值
elementText方法指定元素的值
Attribute:
Import org.dom4j.Attribute;
getName方法獲得屬性名稱
getValue方法獲得屬性值
setValue方法設置屬性值
Node:
import org.dom4j.Node;
Document和Element中selectSingleNode方法獲得對象
setName方法設置節點名稱
getText方法獲得節點值
setText方法設置節點值
List,Iterator:
import java.util.List;
Document和Element中selectNodes方法獲得對象
import java.util.Iterator;
List中iterator方法,Iterator中hasNext方法和next方法來獲得節點或屬性
XMLWriter:
import org.dom4j.io.XMLWriter;
Writer方法與OutputStream(FileOutputStream),Writer(FileWriter)
write方法寫對象
close方法關閉寫對象
OutputFormat:
import org.dom4j.io.OutputFormat;
setEncoding方法設置字符集
createCompactFormat方法為緊湊格式,默認
createPrettyFormat方法為縮進格式
SAXReader:
import org.dom4j.io.SAXReader ;
read方法與File
下面,我們用這些類來實現一下創建XML文件的簡單過程:
?1
package?Test;
?2
?3
import?java.io.*;
?4
import?org.dom4j.*;
?5
import?org.dom4j.io.*;
?6
?7
public?class?xmlTest?
{
?8
????
?9
????public?void?writeXML()
{
10
????????Document?doc?=?org.dom4j.DocumentHelper.createDocument();
11
????????//創建節點操作對象
12
????????Element?rootElement?=?doc.addElement("student");
13
????????//創建根節點對象rootElement,標簽名為student
14
????????
15
????????rootElement.setText("hello");
16
????????//對節點設置內容,后面讀取XML文件的時候可以把他取出來
17
????????rootElement.addAttribute("id","030511111");
18
????????//設置節點屬性
19
????????Element?name?=?rootElement.addElement("name");
20
????????//添加子節點
21
????????name.setText("xiaozhang");
22
????????//設置子節點內容
23
????????Element?age?=?rootElement.addElement("age");
24
????????age.setText("23");
25
????????
26
????????try?
{
27
????????????OutputFormat?fmt?=?new?OutputFormat();
28
????????????//創建輸出格式對象
29
????????????fmt.setEncoding("gb2312");
30
????????????XMLWriter?writer?=?new?XMLWriter(fmt);
31
????????????//以輸出格式為參數,創建XML文件輸出對象
32
????????????OutputStream?out?=?new?FileOutputStream("d:\\test.xml");
33
????????????//創建輸出流..
34
????????????writer.setOutputStream(out);
35
????????????//設置輸出流
36
????????????writer.write(doc);
37
????????????//輸出doc對象,即形成XML文件
38
????????}?catch?(Exception?e)?
{
39
40
????????????e.printStackTrace();
41
????????}
42
????????
43
????}
44
????
45
????public?void?readXML()
{
46
????????SAXReader?reader?=?new?SAXReader();
47
????????//創建讀取對象
48
????????Document?doc;
49
????????try?
{
50
????????????doc?=?reader.read(new?File("d:\\test.xml"));
51
????????????//從test.xml文件中取得節點操作對象
52
????????????Element?name?=?doc.getRootElement();
53
????????????//取得節點對象
54
????????????System.out.println(name.getText());
55
????????????//輸出節點內容
56
????????}?catch?(Exception?e)?
{
57
????????????e.printStackTrace();
58
????????}
59
????}
60
????
61
????public?static?void?main(String[]?args)
{
62
????????xmlTest?s?=?new?xmlTest();
63
????????s.writeXML();
64
????????s.readXML();????
65
????}
66
}
67
歡迎來訪!^.^!
本BLOG僅用于個人學習交流!
目的在于記錄個人成長.
所有文字均屬于個人理解.
如有錯誤,望多多指教!不勝感激!