Posted on 2007-11-20 08:58
陜西BOY 閱讀(1483)
評(píng)論(2) 編輯 收藏
在做項(xiàng)目的時(shí)候往往會(huì)有很多參數(shù)需要不修改程序的條件下,實(shí)現(xiàn)一些參數(shù)的變化,那么我們首先想到的就應(yīng)該是讀取xml文件了。所以我們只需要改一下項(xiàng)目里面的xml文件里面的參數(shù)的值就可以實(shí)現(xiàn)了。在這里我簡單的說一下,如下:
try {
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance(); //獲取 DocumentBuilderFactory
(定義工廠,使應(yīng)用程序能夠從 XML 文檔獲取生成 DOM 對(duì)象樹的解析器)的新實(shí)例
DocumentBuilder builder = factory.newDocumentBuilder();//使其從 XML 文檔獲取 DOM 文檔實(shí)例
java.io.File f =new File("文件的路徑");//指定一個(gè)文件
Document document = builder.parse(f);//接口表示整個(gè) HTML 或 XML 文檔
Element rootElement = document.getDocumentElement();//這是一種便捷屬性,該屬性允許直接訪問文檔的文檔元素的子節(jié)點(diǎn)
NodeList list = rootElement.getElementsByTagName("field");//以文檔順序返回具有給定標(biāo)記名稱的所有后代Elements
的NodeList
Element element = (Element) list.item(0);//提取第一個(gè)該標(biāo)記名稱的Element
NodeList yearList = element.getElementsByTagName("cols");//獲取該Element下給定標(biāo)記名稱為“cols“的NodeList
Text text = (Text) yearList.item(0).getFirstChild();//獲取NodeList
第一個(gè)子節(jié)點(diǎn)
NodeList yearList1 = element.getElementsByTagName("rows");");//獲取該Element下給定名稱為“rows“的NodeList
Text text1 = (Text) yearList1.item(0).getFirstChild();();//獲取NodeList
第一個(gè)子節(jié)點(diǎn)
hang= Integer.parseInt(text.getData());//獲取節(jié)點(diǎn)的值
lie= Integer.parseInt(text1.getData());
} catch (Exception e) {
System.out.println("exception:" + e.getMessage());
}
我的xml文檔如下:
<hxw>
<field id="1">
<cols>5</cols>
<rows>10</rows>
</field>
</hxw>
當(dāng)然如果有多個(gè)field 的話可以for循環(huán)讀取。
好了就說到這里吧,歡迎大家提出寶貴意見:)