laoding
          本來我以為,隱身了別人就找不到我,沒有用的,像我這樣拉風的男人,無論走到哪里,都像在黑暗中的螢火蟲一樣,那樣的鮮明,那樣的出眾。我那憂郁的眼神,稀疏的胡茬,那微微隆起的將軍肚和親切的笑容......都深深吸引了眾人......
          posts - 0,  comments - 37,  trackbacks - 0
           

          首先去下載dom4j的jar包,新建WEB工程,將jar包加到工程當中

          準備一個操作類 FindXmlDoc.java

          import java.io.File;
          import java.io.FileOutputStream;
          import java.io.FileWriter;
          import java.io.IOException;
          import java.io.OutputStreamWriter;
          import java.io.Writer;

          import org.dom4j.Document;
          import org.dom4j.DocumentHelper;
          import org.dom4j.io.OutputFormat;
          import org.dom4j.io.SAXReader;
          import org.dom4j.io.XMLWriter;

          public class FindXmlDoc {

           
          /**
            * 
            *   @Description 創建xml文件
            *   
          @param filename
            *   
          @param rootElement
            *   void
            *   
          @throws  拋出異常說明
            
          */
           
          public void createXMLFile(String filename,String rootElement) {

            
          /** 建立document對象 */
            Document document 
          = DocumentHelper.createDocument();
            

            document.addElement(rootElement);
            
          try {

             
          /** 將document中的內容寫入文件中 */

             XMLWriter writer 
          = new XMLWriter(new FileWriter(new File(filename)));

             writer.write(document);

             writer.close();

            } 
          catch (Exception ex) {
             
            }

           }
           
           
          /**
            * 
            *   @Description 保存編輯的XML文件  
            *   
          @param document
            *   
          @param filepath
            *   
          @return
            *   boolean
            *   
          @throws  拋出異常說明
            
          */
           
          public boolean saveDocument(Document document,String filepath) {
            
          boolean isOk = false;
            Writer writer 
          = null;
            XMLWriter xmlWriter 
          = null;
            
          try {
             writer 
          = new OutputStreamWriter(new FileOutputStream(filepath),"utf-8");
             OutputFormat format 
          = OutputFormat.createPrettyPrint();
             format.setEncoding(
          "utf-8");
             xmlWriter 
          = new XMLWriter(writer,format);
             xmlWriter.write(document);
             writer.close();
             isOk 
          = true;
            } 
          catch (IOException e) {
            
             
          return false;
            }
            
          return isOk;
           }
           
           
          /**
            * 
            *   @Description 獲取XML文件中的信息,如果文件存在,返回document,如果不存在,返回null
            *   
          @param filepath
            *   
          @return
            *   Document
            *   
          @throws  拋出異常說明
            
          */
           
          public Document getDocument(String filepath) {
            Document document 
          = null;
            SAXReader reader 
          = new SAXReader();
            
          try {
             File file 
          = new File(filepath);
             
          if(file.exists()){
              document 
          = reader.read(file);//不是以UTF-8來讀取。要換成以UTF——8來讀取
           
             }
          else{
              
          return null;
             }   
            } 
          catch (Exception e) {
              
            }
            
          return document;
           }
          }






          下面是測試類

           

          public class TestCreateXML {
            
          public static void main(String[] args) {

               TestCreateXML.createXML();
           } 

          public static void createXML(){
            FindXmlDoc fxd 
          = new FindXmlDoc();
            fxd.createXMLFile(
          "teacher.xml""teacher");
           }
          }



          執行這個類就會在webroot下生成teacher.xml文件
          內容如下:

           

          <?xml version="1.0" encoding="utf-8"?>

          <teacher/> 


          這個是只有一個根節點的xml文件。
          下面來加點東西
          修改createXML方法為如下:
           

          public static void createXML(){
            FindXmlDoc fxd 
          = new FindXmlDoc();
            String path 
          ="teacher.xml";
            Document document 
          = fxd.getDocument(path);
            Element rootElement 
          = document.getRootElement();
            Element student1Element 
          = rootElement.addElement("student1");
            Element student1name 
          = student1Element.addElement("name");
            Element student1class 
          = student1Element.addElement("class");
            student1name.addText(
          "ding");
            student1class.addText(
          "040931");
            Element student2Element 
          = rootElement.addElement("student2");
            Element student2name 
          = student2Element.addElement("name");
            Element student2class 
          = student2Element.addElement("class");
            student2name.addText(
          "laoding");
            student2class.addText(
          "040931");
            fxd.saveDocument(document, path);
            System.out.println(
          "success");
           }


          執行看到后臺打印出success

          此時發現teacher.xml變成了以下樣子

           

          <?xml version="1.0" encoding="utf-8"?>

          <teacher> 
            
          <student1> 
              
          <name>ding</name>  
              
          <class>040931</class> 
            
          </student1>  
            
          <student2> 
              
          <name>laoding</name>  
              
          <class>040931</class> 
            
          </student2>  
          </teacher>

          這就完成生成xml的操作了

          下面是讀取xml文件

          public static void readXML(){
            FindXmlDoc fxd 
          = new FindXmlDoc();
            String path 
          ="teacher.xml";
            Document document 
          = fxd.getDocument(path);
            Element rootElement 
          = document.getRootElement();
           
            Element student 
          = rootElement.element("student1");
            System.out.println(student.getName());
            List l 
          = student.elements();
            
          for(int i = 0; i < l.size(); i++){
             Element e
          = (Element)l.get(i);
             System.out.println(e.getText());
            }
           }


          執行這個方法,后臺打印出

          student1
          ding
          040931


          可以看到讀取到節點student1以及這個節點下的內容

          將Element student = rootElement.element("student1");這里的student1改成student2


          執行看到

          student2
          laoding
          040931


          好了,完成了,有什么疑問,歡迎交流

          posted on 2008-09-08 20:16 老丁 閱讀(1106) 評論(0)  編輯  收藏 所屬分類: xml

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          本博客主為學習和復習之用,無關其他,想罵人的繞道
          Email:dkm123456@126.com
          大家一起交流進步
          QQ:283582761


          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          留言簿(4)

          我參與的團隊

          文章分類(50)

          文章檔案(48)

          相冊

          朋友

          搜索

          •  

          積分與排名

          • 積分 - 96531
          • 排名 - 600

          最新評論

          主站蜘蛛池模板: 敦化市| 嘉定区| 临漳县| 锡林浩特市| 金溪县| 小金县| 高清| 陈巴尔虎旗| 四川省| 伊宁县| 灵台县| 泸水县| 安塞县| 晋宁县| 当阳市| 宜昌市| 山西省| 信宜市| 北碚区| 苏尼特左旗| 卢龙县| 瓮安县| 浙江省| 区。| 惠州市| 中西区| 通州市| 皮山县| 都昌县| 泸溪县| 凤凰县| 仁布县| 综艺| 专栏| 娱乐| 大兴区| 张家口市| 赤峰市| 潜山县| 天气| 宁陕县|