XML文件寫入 一/二、通過 DOM 方式生成 XML 文檔

DOM和SAX生成xml文件 JDOM和DOM4J會形成一個全新的RSS文件

 

2-1 創建根節點和book節點屬性

1,前兩個步驟和解析XML文件一致,都是獲取DocumentBuilder對象

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

DocumentBuilder db = dbf.getDocumentBuilder();

2,通過DocumentBuilder的newDocument方法獲取Document對象,代表着要生成的DOM樹

Document do = db.newDocument();

3,將根節點添加進DOM樹

Element ele = do.createElement("bookStore");

document.appendChild(ele);

4,將子節點添加進DOM樹

Element ele1 = document.createElement("book");

ele.appendChild(ele1)

5,將子節點的屬性及屬性值添加進DOM樹

ele1.setAttribute("id","1");

 

2-2 創建 XML 文件

1,創建TransformerFactory對象,Factory爲工廠類,不能直接new對象,通過newInstance獲取對象

TransformerFactory tff = TransformerFactory.newInstance();

2,通過tff獲取Transfomer對象

Transformer tf = tff.newTransformer();

3,指定換行格式

tf.setOutputProperty(OutputKeys.INDENT,"yes");

4,用DOM樹生成XML文件,將DOM樹以及輸出流作爲參數傳入

tf.transform(new DOMSource(Document do),new StreamResult(new File("books1.xml"));

 

2-3 生成節點間的文本

  • standalone : 用來表示該文件是否呼叫其它外部的文件。若值是 ”yes” 表示沒有呼叫外部文件,即說明當前的xml文件是沒有DTD和Schema作爲它的相關文檔,若值是 ”no” 則表示有呼叫外部文件。默認值是 “yes”。
  • DTD:文檔類型定義(Document Type Definition)是一套關於標記符的語法規則。

1,將子節點添加進DOM樹

Element ele2 = new Element("name");

 ele1.append(ele2);

2, 設置子節點的文本內容

ele2.setTextContent("String");

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章