<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    jackie8667  
    日歷
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567
    統(tǒng)計(jì)
    • 隨筆 - 0
    • 文章 - 2
    • 評(píng)論 - 0
    • 引用 - 0

    導(dǎo)航

    留言簿

    文章檔案

    搜索

    •  

    最新評(píng)論

     

    package org.db;

    import java.io.File;
    import java.io.FileWriter;
    import java.util.Iterator;
    import java.util.List;


    import org.dom4j.Attribute;
    import org.dom4j.Document;
    import org.dom4j.DocumentHelper;
    import org.dom4j.Element;
    import org.dom4j.XPath;
    import org.dom4j.io.OutputFormat;
    import org.dom4j.io.SAXReader;
    import org.dom4j.io.XMLWriter;


    public class Demo {
     /**
         * 建立一個(gè)XML文檔,文檔名由輸入屬性決定
         * @param filename 需建立的文件名
         * @return 返回操作結(jié)果, 0表失敗, 1表成功
         */
        public static int createXMLFile(String filename){
           /** 返回操作結(jié)果, 0表失敗, 1表成功 */
           int returnValue = 0;
           /** 建立document對(duì)象 */
           Document document = DocumentHelper.createDocument();
           /** 建立XML文檔的根books */
           Element booksElement = document.addElement("books");
           /** 加入一行注釋 */
           booksElement.addComment("This is a test for dom4j, holen, 2004.9.11");
           /** 加入第一個(gè)book節(jié)點(diǎn) */
           Element bookElement = booksElement.addElement("book");
           /** 加入show屬性內(nèi)容 */
           bookElement.addAttribute("show","yes");
           /** 加入title節(jié)點(diǎn) */
           Element titleElement = bookElement.addElement("title");
           /** 為title設(shè)置內(nèi)容 */
           titleElement.setText("Dom4j Tutorials");
          
           /** 類似的完成后兩個(gè)book */
           bookElement = booksElement.addElement("book");
           bookElement.addAttribute("show","yes");
           titleElement = bookElement.addElement("title");
           titleElement.setText("Lucene Studing");
           bookElement = booksElement.addElement("book");
           bookElement.addAttribute("show","no");
           titleElement = bookElement.addElement("title");
           titleElement.setText("Lucene in Action");
          
           /** 加入owner節(jié)點(diǎn) */
           Element ownerElement = booksElement.addElement("owner");
           ownerElement.setText("O'Reilly");
          
           try{
               /** 將document中的內(nèi)容寫入文件中 */
            OutputFormat format = OutputFormat.createPrettyPrint();
            format.setEncoding("UTF-8");
               XMLWriter writer = new XMLWriter(new FileWriter(new File(System.getProperty("user.dir")+"/test.xml")),format);
               writer.write(document);
               writer.close();
               /** 執(zhí)行成功,需返回1 */
               returnValue = 1;
           }catch(Exception ex){
               ex.printStackTrace();
           }
                 
           return returnValue;
        }
        public static void main(String[] args) {
         //createXMLFile("test.xml");
        }
       
        /**
         * 修改XML文件中內(nèi)容,并另存為一個(gè)新文件
         * 重點(diǎn)掌握dom4j中如何添加節(jié)點(diǎn),修改節(jié)點(diǎn),刪除節(jié)點(diǎn)
         * @param filename 修改對(duì)象文件
         * @param newfilename 修改后另存為該文件
         * @return 返回操作結(jié)果,0表失敗,1表成功
         */
        public static  int ModiXMLFile(String filename,String newfilename){
           int returnValue = 0;
           try{
            System.out.println(filename);
               SAXReader saxReader = new SAXReader();
               Document document = saxReader.read(new File(filename));
               /** 修改內(nèi)容之一: 如果book節(jié)點(diǎn)中show屬性的內(nèi)容為yes,則修改成no */
               /** 先用xpath查找對(duì)象 */
               XPath xpath = (XPath) DocumentHelper.createXPath("/books/book/@show");
               List list = xpath.selectNodes(document);
               Iterator iter = list.iterator();
               while(iter.hasNext()){
                  Attribute attribute = (Attribute)iter.next();
                  if(attribute.getValue().equals("yes")){
                      attribute.setValue("no");
                  }  
               }
              
               /**
                * 修改內(nèi)容之二: 把owner項(xiàng)內(nèi)容改為Tshinghua
                * 并在owner節(jié)點(diǎn)中加入date節(jié)點(diǎn),date節(jié)點(diǎn)的內(nèi)容為2004-09-11,還為date節(jié)點(diǎn)添加一個(gè)屬性type
                */
               list = document.selectNodes("/books/owner" );
               iter = list.iterator();
               if(iter.hasNext()){
                  Element ownerElement = (Element)iter.next();
                  ownerElement.setText("Tshinghua");
                  Element dateElement = ownerElement.addElement("date");
                  dateElement.setText("2004-09-11");
                  dateElement.addAttribute("type","Gregorian calendar");
               }
              
               /** 修改內(nèi)容之三: 若title內(nèi)容為Dom4j Tutorials,則刪除該節(jié)點(diǎn) */
               list = document.selectNodes("/books/book");
               iter = list.iterator();
               while(iter.hasNext()){
                  Element bookElement = (Element)iter.next();
                  Iterator iterator = bookElement.elementIterator("title");
                  while(iterator.hasNext()){
                      Element titleElement=(Element)iterator.next();
                      if(titleElement.getText().equals("Dom4j Tutorials")){
                         bookElement.remove(titleElement);
                      }
                  }
               }         
              
               try{
                  /** 將document中的內(nèi)容寫入文件中 */
               OutputFormat format = OutputFormat.createPrettyPrint();
               format.setEncoding("UTF-8");
                  XMLWriter writer = new XMLWriter(new FileWriter(new File(newfilename)),format);
                  writer.write(document);
                  writer.close();
                  /** 執(zhí)行成功,需返回1 */
                  returnValue = 1;
               }catch(Exception ex){
                  ex.printStackTrace();
               }
           }catch(Exception ex){
               ex.printStackTrace();
           }
            return returnValue;
        }
      }

    posted on 2012-04-27 19:55 JAVA_小戴 閱讀(54) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
     
    Copyright © JAVA_小戴 Powered by: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 亚洲国产一区在线| 99re在线这里只有精品免费 | 免费精品久久久久久中文字幕| 亚洲AV日韩精品久久久久| 国产成人高清精品免费软件| 亚洲网站在线免费观看| 91福利免费网站在线观看| 久久亚洲精品无码网站| 亚洲av片不卡无码久久| 亚洲精品线在线观看| 久久亚洲高清综合| 可以免费观看的一级毛片| 免费H网站在线观看的| 中文字幕在线观看免费视频| 国产乱子伦精品免费视频| 国产精品亚洲综合网站| 亚洲欧洲日韩国产一区二区三区| 亚洲av鲁丝一区二区三区| 亚洲一区无码中文字幕 | 亚洲1区2区3区精华液| 亚洲第一区二区快射影院| 亚洲第一页在线视频| 日韩亚洲AV无码一区二区不卡| 亚洲AV无码国产丝袜在线观看 | 国产免费区在线观看十分钟| 免费夜色污私人影院网站电影| 亚洲AV无码成人精品区日韩| 亚洲日韩国产一区二区三区在线| 亚洲人成在线中文字幕| 亚洲日本视频在线观看| 亚洲精品一区二区三区四区乱码 | 中文字幕在线免费观看| 99热在线免费播放| 67194国产精品免费观看| 亚洲一区免费视频| 麻豆最新国产剧情AV原创免费 | 亚洲黄网在线观看| 亚洲国产综合精品| 亚洲精品国产国语| 亚洲精品无码久久久久YW| 国产亚洲欧美日韩亚洲中文色|