今天學習了Java讀取XML的簡單方法,主要用到了javax.xml.pasers.*中的一些對象(注:可能會用到的包,xercesImpl.jar、xml-apis.jar
和jdom.jar
),首先構造一個簡單的操作XML的工具類(Simple Control XML)SCXMLUtils,具體代碼如下(SCXMLUtils.java):





























































































說明:其中getXMLDoc用于返回一個指定xml文件的Document對象,getChild返回一個指定節點的下一層中某一個指定名稱的節點對象,
getTextValue用于返回一個指定節點內的文本內容。
用來測試這個工具類的TestSCXML.java:
























































說明:首先調用getXMLDoc獲得test.xml的Document對象,然后調用getDocumentElement()函數獲得這個xml文件的根節點(即Home節點),然后
執行getChild(root, "Master")返回根節點下一層中,名為Master的子節點對象node1,然后的執行getTextValue(node1.getFirstChild())獲得Master
節點中的文本信息,這里特別說明一下,為什么是getTextValue(node1.getFirstChild())而不是getTextValue(node1),因為<Master>...</Master>
之間的內容也被認為是一個節點(也可以說成是一個text對象),并且這個節點是Master節點下的第一個子節點,所以用getFirstChild()
來獲得Master節點中的文本內容。
測試用的test.xml:
<?xml version="1.0" encoding="GBK"?>
<Home>
??? <Master>fatcatman</Master>
</Home>
運行結果:
The Master is fatcatman
今天學習了如何Java讀取XML某個節點中的內容,明天繼續學習修改XML的方法。