用JAVA創(chuàng)建,讀取XML文件

          Posted on 2006-11-10 08:53 久城 閱讀(6221) 評論(1)  編輯  收藏 所屬分類: Java理解筆記
          首先導(dǎo)入dom4j.jar包,這個包里面有我們創(chuàng)建XML文件需要用到的類,比如常用的有:

          Document:
          import org.dom4j.Document;
          Import org.dom4j.DocumentHelper;
          DocumentHelper.createDocument(); 獲得文檔對象
          addElement方法增加根節(jié)點(diǎn)
          getRootElement方法獲得根節(jié)點(diǎn)
          asXML方法將文檔對象包含的內(nèi)容轉(zhuǎn)換為字符
          addComment方法在增加注釋
          getPath方法獲得路徑,根節(jié)點(diǎn)為/

          Element:
          import org.dom4j.Elemet;
          addElement方法增加子節(jié)點(diǎn)
          addAttribute方法增加屬性
          getName方法獲得節(jié)點(diǎn)名稱
          asXML方法將文檔對象包含的內(nèi)容轉(zhuǎn)換為字符
          addComment方法在增加注釋
          getPath方法獲得路徑
          addText方法增加節(jié)點(diǎn)值
          setText方法設(shè)置節(jié)點(diǎn)值
          addNamespace方法增加命名空間
          attributeCount方法獲得屬性個數(shù)
          attributeValue方法獲得屬性值
          elementText方法指定元素的值

          Attribute:
          Import org.dom4j.Attribute;
          getName方法獲得屬性名稱
          getValue方法獲得屬性值
          setValue方法設(shè)置屬性值

          Node:
          import org.dom4j.Node;
          Document和Element中selectSingleNode方法獲得對象
          setName方法設(shè)置節(jié)點(diǎn)名稱
          getText方法獲得節(jié)點(diǎn)值
          setText方法設(shè)置節(jié)點(diǎn)值

          List,Iterator:
          import java.util.List;
          Document和Element中selectNodes方法獲得對象
          import java.util.Iterator;
          List中iterator方法,Iterator中hasNext方法和next方法來獲得節(jié)點(diǎn)或?qū)傩?br />
          XMLWriter:
          import org.dom4j.io.XMLWriter;
          Writer方法與OutputStream(FileOutputStream),Writer(FileWriter)
          write方法寫對象
          close方法關(guān)閉寫對象

          OutputFormat:
          import org.dom4j.io.OutputFormat;
          setEncoding方法設(shè)置字符集
          createCompactFormat方法為緊湊格式,默認(rèn)
          createPrettyFormat方法為縮進(jìn)格式

          SAXReader:
          import org.dom4j.io.SAXReader ;
          read方法與File

          下面,我們用這些類來實(shí)現(xiàn)一下創(chuàng)建XML文件的簡單過程:

          ?1package?Test;
          ?2
          ?3import?java.io.*;
          ?4import?org.dom4j.*;
          ?5import?org.dom4j.io.*;
          ?6
          ?7public?class?xmlTest?{
          ?8????
          ?9????public?void?writeXML(){
          10????????Document?doc?=?org.dom4j.DocumentHelper.createDocument();
          11????????//創(chuàng)建節(jié)點(diǎn)操作對象
          12????????Element?rootElement?=?doc.addElement("student");
          13????????//創(chuàng)建根節(jié)點(diǎn)對象rootElement,標(biāo)簽名為student
          14????????
          15????????rootElement.setText("hello");
          16????????//對節(jié)點(diǎn)設(shè)置內(nèi)容,后面讀取XML文件的時候可以把他取出來
          17????????rootElement.addAttribute("id","030511111");
          18????????//設(shè)置節(jié)點(diǎn)屬性
          19????????Element?name?=?rootElement.addElement("name");
          20????????//添加子節(jié)點(diǎn)
          21????????name.setText("xiaozhang");
          22????????//設(shè)置子節(jié)點(diǎn)內(nèi)容
          23????????Element?age?=?rootElement.addElement("age");
          24????????age.setText("23");
          25????????
          26????????try?{
          27????????????OutputFormat?fmt?=?new?OutputFormat();
          28????????????//創(chuàng)建輸出格式對象
          29????????????fmt.setEncoding("gb2312");
          30????????????XMLWriter?writer?=?new?XMLWriter(fmt);
          31????????????//以輸出格式為參數(shù),創(chuàng)建XML文件輸出對象
          32????????????OutputStream?out?=?new?FileOutputStream("d:\\test.xml");
          33????????????//創(chuàng)建輸出流..
          34????????????writer.setOutputStream(out);
          35????????????//設(shè)置輸出流
          36????????????writer.write(doc);
          37????????????//輸出doc對象,即形成XML文件
          38????????}
          ?catch?(Exception?e)?{
          39
          40????????????e.printStackTrace();
          41????????}

          42????????
          43????}

          44????
          45????public?void?readXML(){
          46????????SAXReader?reader?=?new?SAXReader();
          47????????//創(chuàng)建讀取對象
          48????????Document?doc;
          49????????try?{
          50????????????doc?=?reader.read(new?File("d:\\test.xml"));
          51????????????//從test.xml文件中取得節(jié)點(diǎn)操作對象
          52????????????Element?name?=?doc.getRootElement();
          53????????????//取得節(jié)點(diǎn)對象
          54????????????System.out.println(name.getText());
          55????????????//輸出節(jié)點(diǎn)內(nèi)容
          56????????}
          ?catch?(Exception?e)?{
          57????????????e.printStackTrace();
          58????????}

          59????}

          60????
          61????public?static?void?main(String[]?args){
          62????????xmlTest?s?=?new?xmlTest();
          63????????s.writeXML();
          64????????s.readXML();????
          65????}

          66}

          67


          歡迎來訪!^.^!
          本BLOG僅用于個人學(xué)習(xí)交流!
          目的在于記錄個人成長.
          所有文字均屬于個人理解.
          如有錯誤,望多多指教!不勝感激!

          Feedback

          # re: 用JAVA創(chuàng)建,讀取XML文件  回復(fù)  更多評論   

          2011-07-14 09:31 by centipede
          好東東啊

          Copyright © 久城

          主站蜘蛛池模板: 万全县| 张家界市| 民县| 康平县| 长沙县| 麦盖提县| 大竹县| 健康| 牙克石市| 石首市| 齐河县| 康定县| 大石桥市| 静安区| 诸暨市| 连江县| 颍上县| 固阳县| 秦安县| 昭觉县| 前郭尔| 定兴县| 锦屏县| 中山市| 宁安市| 汶上县| 通辽市| 襄城县| 孟村| 通化县| 屏山县| 平安县| 伊金霍洛旗| 乌鲁木齐市| 驻马店市| 华坪县| 额尔古纳市| 柳江县| 綦江县| 邵阳县| 武胜县|