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

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

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

    posts - 28,comments - 3,trackbacks - 0
    import   javax.xml.transform.dom.*;  
      import   javax.xml.parsers.*;  
      import   org.xml.sax.*;  
      import   org.xml.sax.helpers.*;  
      import   org.w3c.dom.*;  
      import   javax.xml.transform.*;  
      import   javax.xml.transform.stream.StreamResult     ;  
      import   javax.xml.transform.stream.StreamSource     ;  
      import   javax.xml.transform.dom.*;  
       
      import   java.util.*;  
      import   java.io.*;  
       
      public   class   DomReadDR{  
      DocumentBuilderFactory   factory;  
      DocumentBuilder   builder;  
      Document   doc;  
       
      public   DomReadDR()throws   Exception{  
      factory=DocumentBuilderFactory.newInstance();  
      builder   =   factory.newDocumentBuilder();  
      doc   =   builder.parse("test.xml");  
      }  
      public   void   Read()   throws   Exception{  
      doc.normalize();  
      NodeList   links=doc.getElementsByTagName("song");  
      for(int   i=0;i<links.getLength();i++){  
      Element   link   =   (Element)links.item(i);  
      System.out.println(link.getElementsByTagName("name").item(0).  
      getFirstChild().getNodeValue());  
      System.out.println(link.getElementsByTagName("music-by").item(0).  
      getFirstChild().getNodeValue());  
      }  
      }  
      //替換節點  
      public   int   replaceNode(String   nodeID,String   nodeValue){  
       
      doc.normalize();  
      NodeList   links=doc.getElementsByTagName("song");  
      //查找要替換的Node  
      boolean   blfindNode=false;  
      Element   link=null;  
      for(int   i=0;i<links.getLength();i++){  
      link   =   (Element)links.item(i);  
      if((link.getElementsByTagName("mId").item(0).getFirstChild().getNodeValue()).trim().equals(nodeID)){  
      blfindNode=true;  
      link.getElementsByTagName("music-by").item(0).getFirstChild().setNodeValue(nodeValue);//替換node的內容  
      break;  
      }  
      }  
      if   (!blfindNode)  
      {  
      return   1;//沒有找到合適的節點  
      }  
      try{  
      TransformerFactory   tFactory=TransformerFactory.newInstance();  
      Transformer   transformer=tFactory.newTransformer();  
      //設置輸出的encoding為改變gb2312  
      transformer.setOutputProperty("encoding","gb2312");    
      DOMSource   source=   new   DOMSource(doc);  
      StreamResult   result   =   new   StreamResult("test.xml");  
      transformer.transform(source,result);  
      }catch(javax.xml.transform.TransformerConfigurationException   e){  
      e.printStackTrace();  
      System.out.println(e.getMessage());  
      return   3;//寫文件錯誤  
      }catch(javax.xml.transform.TransformerException   ex){  
      ex.printStackTrace();  
      return   3;  
      }  
      return   0;//替換成功  
      }  
      //刪除節點  
      public   int   deleteNode(String   nodeID){  
       
      doc.normalize();  
      NodeList   links=doc.getElementsByTagName("song");  
      //查找要替換的Node  
      boolean   blfindNode=false;  
      Element   link=null;  
      for(int   i=0;i<links.getLength();i++){  
      link   =   (Element)links.item(i);  
      if((link.getElementsByTagName("mId").item(0).getFirstChild().getNodeValue()).trim().equals(nodeID)){  
      blfindNode=true;  
      try{  
      link.getParentNode().removeChild(link);  
      }catch(DOMException   e){  
      e.printStackTrace();  
      return   2;//Dom錯誤  
      }  
      break;  
      }  
      }  
       
      if   (!blfindNode)  
      {  
      return   1;//沒有找到合適的節點  
      }  
      try{  
      TransformerFactory   tFactory=TransformerFactory.newInstance();  
      Transformer   transformer=tFactory.newTransformer();  
      //設置輸出的encoding為改變gb2312  
       
      transformer.setOutputProperty("encoding","gb2312");    
      DOMSource   source=   new   DOMSource(doc);  
       
      StreamResult   result   =   new   StreamResult("test.xml");  
      transformer.transform(source,result);  
      }catch(javax.xml.transform.TransformerConfigurationException   e){  
      e.printStackTrace();  
      System.out.println(e.getMessage());  
      return   3;//寫文件錯誤  
      }catch(javax.xml.transform.TransformerException   ex){  
      ex.printStackTrace();  
      return   3;  
      }  
      return   0;//替換成功  
      }  
       
      //添加節點  
      public   void   addNode(String   mId,String   name,String   musicby){  
      Text   textseg;  
      Element   link   =   doc.createElement("song");  
       
      Element   emId   =   doc.createElement("mId");  
      textseg=doc.createTextNode(mId);  
      emId.appendChild(textseg);  
      link.appendChild(emId);  
       
      Element   ename   =   doc.createElement("name");  
      textseg=doc.createTextNode(name);  
      ename.appendChild(textseg);  
      link.appendChild(ename);  
       
       
      Element   emusicby   =   doc.createElement("music-by");  
      textseg   =   doc.createTextNode(musicby);  
      emusicby.appendChild(textseg);  
      link.appendChild(emusicby);  
       
      Element   root   =   doc.getDocumentElement();  
      root.normalize();  
      root.appendChild(link);  
       
      System.out.println(doc.getDoctype());  
      try{  
       
      TransformerFactory   tFactory=TransformerFactory.newInstance();  
      Transformer   transformer=tFactory.newTransformer();  
      //設置輸出的encoding為改變gb2312  
       
      transformer.setOutputProperty("encoding","gb2312");    
      DOMSource   source=   new   DOMSource(doc);  
      StreamResult   result   =   new   StreamResult("test.xml");  
      transformer.transform(source,result);  
      }catch(javax.xml.transform.TransformerConfigurationException   e){  
      e.printStackTrace();  
      System.out.println(e.getMessage());  
      }catch(javax.xml.transform.TransformerException   ex){  
      ex.printStackTrace();  
      }  
      }  
      public   static   void   main(String[]   args){  
      try{  
      DomReadDR   dr   =   new   DomReadDR();  
      dr.Read();  
      //dr.addNode("5","卡本特1","yestodayfdgdrtyrtyrtyrtyfgdfgdfgdfg   once   more");  
      System.out.println(dr.replaceNode("4","天上人間第死的克己復禮虧損大家法律虧損代理費"));  
      System.out.println(dr.deleteNode("1"));  
      }catch(Exception   e){  
      System.out.println(e.getMessage());  
      }  
      }  
       
      }  
    posted on 2007-05-25 09:21 李大嘴 閱讀(4119) 評論(1)  編輯  收藏

    FeedBack:
    # re: 操作xml(讀取、添加、刪除、修改節點)
    2009-12-28 12:11 | wpj
    好東東。  回復  更多評論
      

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲成AV人片天堂网无码| 国产免费卡一卡三卡乱码| 亚洲v高清理论电影| 亚洲AV无码不卡无码| 水蜜桃亚洲一二三四在线| 永久黄网站色视频免费观看| 青青青国产在线观看免费 | 亚洲av无码专区在线观看下载| 午夜宅男在线永久免费观看网| 亚洲精品二三区伊人久久| 日韩吃奶摸下AA片免费观看| 亚洲美国产亚洲AV| 可以免费观看的一级毛片| 国产日韩久久免费影院| 亚洲AV无码一区东京热| 美女网站免费福利视频| 国产在亚洲线视频观看| 亚洲精品无码午夜福利中文字幕| a级日本高清免费看| 亚洲美女中文字幕| 在线免费观看一级片| 九九九精品视频免费| 亚洲一二成人精品区| 日本亚洲免费无线码| 成人久久久观看免费毛片| 久久精品国产精品亚洲艾草网| jjizz全部免费看片| 美女免费视频一区二区| 久久国产精品亚洲综合| 免费视频淫片aa毛片| 三级黄色片免费看| 亚洲自国产拍揄拍| 不卡精品国产_亚洲人成在线| 91制片厂制作传媒免费版樱花 | 亚洲AV色吊丝无码| 亚洲成a人无码av波多野按摩| 黄色片免费在线观看| 亚洲无人区码一二三码区别图片| 亚洲综合区小说区激情区 | 久久99久久成人免费播放| 91亚洲国产在人线播放午夜|