xml解析器是指可以解析xml檔案的程式
常見解析器有
1. sax解析器,用於xml的簡單api
2. dom解析器,文件物件模型
文件物件模型就是利用物件來把文件模型化,這些模型不僅描述了文件的結構,還定義了模型中物件的行為。在dom中,物件模型要實現:
a. 用來表示、操作文件的介面
b. 介面的行為和屬性
c. 介面之間的關係和互操作。
在dom介面規範中,有四個最基本的介面:document,node,nodelist,以及namednodemap.
其中:一切都是節點(物件)
node物件:dom中最基本的物件
document物件:代表整個xml文件
nodelist物件包含乙個或者是多個node的列表
element物件代表xml文件中的標籤元素
l 如何讀取
xml檔案? 1.
建立乙個解析器工廠
documentbuilde***ctory factory = documentbuilde***ctory.newinstance(); 2.
以利用這個工廠來獲得乙個具體的解析器物件
documentbuilder builder= factory.newdocumentbuilder();
3.
利用documentbuilder
中的parse()
方法接收乙個
xml文件名作為輸入引數,返回乙個
document
物件。document
物件代表了乙個
xml文件的樹模型
document doc = builder.parse(「book.xml」)
4.
使用document
物件的getelementbytagname()
方法,得到乙個
nodelist
物件,它是
xml文件中的標籤元素列表,可以使用
nodelist
物件的item()
方法得到列表中每個
node物件
nodelist nodelist = doc.getelementsbytagname(「book」);
element node =(element) nodelist.item(i);
5.
通過node
物件的getnodevalue()
方法提取某個標籤內的內容
node.getelementsbytagname(「name」).item(0).getfirstchild().getnodevalue();
l 利用dom,
如何建立乙個
xml檔案?
//建立乙個解析器工廠物件
documentbuilde***ctory factory =documentbuilde***ctory.newinstance();
//建立乙個具體的解析器物件
documentbuilder builder =factory.newdocumentbuilder();
//建立乙個document文件物件
document document = builder.newdocument();
element root =document.createelement("books");
element book =document.createelement("book");
element bname =document.createelement("bname");
bname.settextcontent("夢想");
element author =document.createelement("author");
author.settextcontent("小");
element price =document.createelement("price");
price.settextcontent("30");
attr id =document.createattribute("id");
id.setvalue("book_001");
book.setattributenode(id);
//建立xml檔案轉換器
transforme***ctory transfactory =transforme***ctory.newinstance();
transformer transformer =transfactory.newtransformer();
//設定輸出編碼
transformer.setoutputproperty("encoding","utf-8");
//定義轉換器輸入物件
domsource source = new domsource(document);
//定義轉換器輸出物件
result target = newstreamresult("books.xml");
transformer.transform(source, target);
解析xml檔案(DOM解析)
解析的檔案 醫院心電圖記錄單 門診號 1002080066 住院號 201800964 姓名 羅2 性別 女 年齡 26歲 心檢號 科室 婦產科 床號 9 複查時註明原心檢號 韻律 竇律 心房率 82 心室率 82 軸向 電軸正常 pr間期 0.13 qrs波 0.08 qt間期 0.34 正常心電...
Dom解析XML檔案
dom解析xml檔案的原理是把xml檔案的文件樹物件全部載入到記憶體中,然後解析,這種解析方式的缺點在於在手機 pad等cpu運算速度不快,記憶體有限的裝置上會影響軟體效率和系統效能。使用dom技術解析xml檔案案例 maomao 26 hy 27解析 public static listdompa...
Dom解析xml檔案
xml指可擴充套件標記語言 xml的設計宗旨是傳輸儲存資料 xml文件樹結構 xml文件形成了一種樹結構,它從 根部 開始,然後擴充套件到枝葉 利用dom規範,能夠實現dom 文件和xml之間的相互轉換,遍歷 操作相應dom文件的內容 dom規範的核心就是樹模型 dom解析xml的步驟 1.獲得解析...