隨筆-2  評論-0  文章-20  trackbacks-0

          一.Document對象相關   
            
          1.讀取XML文件,獲得document對象.   

          Java代碼   
          SAXReader reader = new SAXReader();      
          Document   document = reader.read(new File("input.xml"));      

          2.解析XML形式的文本,得到document對象.    

          Java代碼   
          String text = "<members></members>";      
          Document document = DocumentHelper.parseText(text);     


          3.主動創建document對象.    

          Java代碼   
          Document document = DocumentHelper.createDocument();      
          Element root = document.addElement("members");// 創建根節點     


          二.節點相關   
            
          1.獲取文檔的根節點.          
          Java代碼   
          Element rootElm = document.getRootElement();     


          2.取得某節點的單個子節點.    
          Java代碼   
          Element memberElm=root.element("member");// "member"是節點名      


          3.取得節點的文字    
          Java代碼   
          String text=memberElm.getText();       
             
            
          Java代碼   
          String text=root.elementText("name"); 這個是取得根節點下的name字節點的文字.    
            


          4.取得某節點下名為"member"的所有字節點并進行遍歷.      
          Java代碼   
          List nodes = rootElm.elements("member");      
               
          for (Iterator it = nodes.iterator(); it.hasNext();) {      
              Element elm = (Element) it.next();      
             // do something      
          }      
            

          5.對某節點下的所有子節點進行遍歷.    
          Java代碼   
          for(Iterator it=root.elementIterator();it.hasNext();){      
                           Element element = (Element) it.next();      
                          // do something      
                        }     


          6.在某節點下添加子節點.    
          Java代碼   
          Element ageElm = newMemberElm.addElement("age");      
            

          7.設置節點文字.     
          Java代碼   
          ageElm.setText("29");     


          8.刪除某節點.    
          Java代碼   
          parentElm.remove(childElm);// childElm是待刪除的節點,parentElm是其父節點      


          9.添加一個CDATA節點.    
          Java代碼   
          Element contentElm = infoElm.addElement("content");      
          contentElm.addCDATA(diary.getContent());      
               
          contentElm.getText(); // 特別說明:獲取節點的CDATA值與獲取節點的值是一個方法      
          contentElm.clearContent(); //清除節點中的內容,CDATA亦可 
           
           
          三.屬性相關.   
          1.取得某節點下的某屬性   
          Java代碼   
          Element root=document.getRootElement();          
          Attribute attribute=root.attribute("size");// 屬性名name     


          2.取得屬性的文字   
            
          Java代碼     
            
          String text=attribute.getText(); 也可以用:   
            
          Java代碼       
            
          String text2=root.element("name").attributeValue("firstname"); 這個是取得根節點下name字節點的屬性firstname的值.    
           
           
          3.遍歷某節點的所有屬性   
          Java代碼   
          Element root=document.getRootElement();          
          for(Iterator it=root.attributeIterator();it.hasNext();){      
                     Attribute attribute = (Attribute) it.next();      
                     String text=attribute.getText();      
                     System.out.println(text);      
          }     


          4.設置某節點的屬性和文字.   
          Java代碼   
          newMemberElm.addAttribute("name", "sitinspring");     

          5.設置屬性的文字   
          Java代碼   
          Attribute attribute=root.attribute("name");      
          attribute.setText("sitinspring");     


          6.刪除某屬性   
            
          Java代碼   
          Attribute attribute=root.attribute("size");// 屬性名name      
          root.remove(attribute);       
              
            
          四.將文檔寫入XML文件.   
          1.文檔中全為英文,不設置編碼,直接寫入的形式.   
          Java代碼   
          XMLWriter writer = new XMLWriter(new FileWriter("output.xml"));      
          writer.write(document);      
          writer.close();     

          2.文檔中含有中文,設置編碼格式寫入的形式.   
          Java代碼   
          OutputFormat format = OutputFormat.createPrettyPrint();      
          format.setEncoding("GBK");    // 指定XML編碼              
          XMLWriter writer = new XMLWriter(new FileWriter("output.xml"),format);      
                            
          writer.write(document);      
          writer.close();      
             
          五.字符串與XML的轉換   
          1.將字符串轉化為XML    
           Java代碼   
          String text = "<members> <member>sitinspring</member> </members>";      
          Document document = DocumentHelper.parseText(text);      
            


          2.將文檔或節點的XML轉化為字符串.    
          Java代碼   
          SAXReader reader = new SAXReader();      
          Document   document = reader.read(new File("input.xml"));                  
          Element root=document.getRootElement();                      
          String docXmlText=document.asXML();      
          String rootXmlText=root.asXML();      
          Element memberElm=root.element("member");      
          String memberXmlText=memberElm.asXML();

           

          posted on 2011-08-04 09:54 soken 閱讀(237) 評論(0)  編輯  收藏
          主站蜘蛛池模板: 阜宁县| 葫芦岛市| 呈贡县| 古交市| 施甸县| 太仓市| 黄大仙区| 宁南县| 班玛县| 三河市| 无棣县| 贺州市| 历史| 康保县| 永嘉县| 德州市| 江西省| 集贤县| 高清| 岑巩县| 平南县| 织金县| 象山县| 保定市| 定日县| 桂阳县| 娄烦县| 邵阳市| 双城市| 钦州市| 赤城县| 胶南市| 霍城县| 依兰县| 高安市| 南江县| 普安县| 吐鲁番市| 正镶白旗| 进贤县| 鹰潭市|