XML是描述結構化信息的技術(shù),XML格式能偶表達層次結構和重復的元素而不會(huì )被曲解。
XML和HTML格式都是古老的標準通用標記語(yǔ)言(SGML)的衍生語(yǔ)言。
XML和HTML的區別,大小寫(xiě)的區分等等。
通常使用DOM或者SAX來(lái)解析XML,如果在節省內存或者只是對某些元素感興趣,而不關(guān)心他們的上下文,那么可以考慮使用SAX。
關(guān)于DOM,要讀入一個(gè)XML文檔,首先需要一個(gè)DocumentBuilder對象,可以從DocumentBuilderFactory中得到這個(gè)對象,例如:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
然后從文件中讀入某個(gè)文檔:
File f = ...
Document doc = builder.parse(f);
或者,可以用一個(gè)URL:
URL u = ...
Document doc = builder.parse(u);
可以通過(guò)getDocumentElement方法來(lái)分析文檔的內容,他將返回根元素。
Element root = doc.getDocumentElement();
分析子元素可以使用root.getChildNodes方法,但要注意。例如,假設如下文檔:
<font>
<name>Helvetica</name>
<size>36</size>
</font>
這時(shí)候會(huì )分析出5個(gè)元素來(lái):
<font>和<name>之間的空白區域
name元素
</name>和<size>之間的空白區域
size元素
</size>和</font>之間的空白區域
解決方法是:
for (int i = 0; i < nodes.getLength(); i++) {
Node node = nodes.item(i);
if (node instanceof Element) {
Element element = (Element) node;
System.out.println(element.getTextContent());
}
}
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。