竹里館→憶童年

          獨坐幽篁里,彈琴復長嘯;深林人不知,明月來相照
          posts - 9, comments - 23, trackbacks - 0, articles - 0
             :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理

          JDOM處理帶Namespace的XML文件

          Posted on 2007-07-19 14:51 憶童年 閱讀(2953) 評論(3)  編輯  收藏 所屬分類: XML and WebService

          最近在開發中遇到讀取XML文件出現的一些問題-JDOM技術讀取


           1<?xml version="1.0" encoding="gb2312"?>
           2<Result xmlns="http://www.fiorano.com/fesb/activity/DBQueryOnInput2/Out">
           3   <row resultcount="1">
           4      <users_id>1001     </users_id>
           5      <users_name>wangwei   </users_name>
           6      <users_group>80        </users_group>
           7      <users_address>1001號   </users_address>
           8   </row>
           9   <row resultcount="1">
          10      <users_id>1002</users_id>
          11      <users_name>wangwei   </users_name>
          12      <users_group>80        </users_group>
          13      <users_address>1002號   </users_address>
          14   </row>
          15   <row resultcount="1">
          16      <users_id>1003</users_id>
          17      <users_name>wangwei   </users_name>
          18      <users_group>80        </users_group>
          19      <users_address>1003號   </users_address>
          20   </row>
          21   <row resultcount="1">
          22      <users_id>1004</users_id>
          23      <users_name>wangwei   </users_name>
          24      <users_group>80        </users_group>
          25      <users_address>1004號   </users_address>
          26   </row>
          27</Result>

          代碼當中 xmlns="http://www.fiorano.com/fesb/activity/DBQueryOnInput2/Out">
          是這個XML文件的命名空間(Namespace)讀取該文檔的元素值時必須指定其命名空間不然會產生java.lang.NullPointerException 空指針異常
          實際執行代碼

          public class DuXMLTest2 {
              
          public void loadXMLdoc(){
                  FileInputStream fi 
          = null;
                  
          try {
                      fi 
          = new FileInputStream("Test.xml");
                      SAXBuilder sb 
          = new SAXBuilder();
                      
          try {
                          Document doc 
          = sb.build(fi);
                          Element root 
          = doc.getRootElement();
                          Namespace ns 
          = root.getNamespace();
                          List jiedian 
          = root.getChildren();
                          Element et 
          = null;
                          
          for(int i=0;i<jiedian.size();i++){
                              et 
          = (Element) jiedian.get(i);
                              System.out.println(et.getChild(
          "users_id",ns).getText());
                          }

                      }
           catch (JDOMException e) {
                          
          // TODO 自動生成 catch 塊
                          e.printStackTrace();
                      }
           catch (IOException e) {
                          
          // TODO 自動生成 catch 塊
                          e.printStackTrace();
                      }

                  }
           catch (FileNotFoundException e) {
                      
          // TODO 自動生成 catch 塊
                      e.printStackTrace();
                  }

              }

              
          public static void main(String[] args){
                  DuXMLTest2 dt 
          = new DuXMLTest2();
                  dt.loadXMLdoc();
              }

          }

           


          評論

          # re: JDOM處理帶Namespace的XML文件  回復  更多評論   

          2007-11-16 10:55 by chengshuai
          太感謝了,正想找這些東西呢

          # re: JDOM處理帶Namespace的XML文件  回復  更多評論   

          2009-03-12 23:13 by lyg
          太感謝了,研究2天了,終于搞定了,謝謝

          # re: JDOM處理帶Namespace的XML文件  回復  更多評論   

          2009-12-27 20:31 by 說的
          太謝謝樓主了

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


          網站導航:
           
          主站蜘蛛池模板: 洪江市| 建昌县| 集贤县| 北票市| 封开县| 满城县| 敦化市| 汉川市| 宜宾县| 独山县| 富平县| 万宁市| 岳西县| 乌拉特前旗| 鄂伦春自治旗| 北辰区| 吴川市| 登封市| 饶阳县| 陆良县| 康平县| 嘉峪关市| 天峨县| 分宜县| 申扎县| 武平县| 广河县| 秭归县| 布拖县| 怀仁县| 唐河县| 若尔盖县| 大同县| 常州市| 虹口区| 南通市| 拜泉县| 桦川县| 林西县| 阿拉尔市| 东丽区|