隨筆 - 0, 文章 - 75, 評論 - 0, 引用 - 0
          數據加載中……

          使用DOM解析XML

          import java.io.IOException;


          import javax.xml.parsers.DocumentBuilder;
          import
          javax.xml.parsers.DocumentBuilderFactory;
          import javax.xml.parsers.ParserConfigurationException;


          import org.w3c.dom.Document;
          import org.w3c.dom.Element;
          import
          org.w3c.dom.Node;
          import org.w3c.dom.NodeList;
          import
          org.xml.sax.SAXException;



          public static void main(String[] args) {


          //1.得到DOM解析器的工廠實例
          DocumentBuilderFactory
          dbf = DocumentBuilderFactory.newInstance();
          try {


          //2.從DOM工廠獲得DOM解析器
          DocumentBuilder
          db = dbf.newDocumentBuilder();


          //3.解析XML文檔,得到一個Document,即DOM樹
          Document
          doc = db.parse("pet1.xml");


          //4.得到所有<狗狗>節點的列表信息
          NodeList
          list = doc.getElementsByTagName_r("狗狗");


          //5.循環狗狗信息
          for(int i = 0 ; i
          < list.getLength(); i++){


          //5.1獲取第i個狗狗元素的信息
          Element
          dog = (Element)list.item(i);


          //5.2獲取第i個狗狗元素的id屬性的值并輸出
          String
          id =
          dog.getAttribute("id"); //獲得標簽里的屬性id的值
          System.out.println("id:"+id);
          //5.3獲取第i個狗狗元素的所有子元素的名稱和值并輸出
          for(Node
          node = dog.getFirstChild(); node!=null;
          node=node.getNextSibling()){
          if(node.getNodeType()
          ==
          Node.ELEMENT_NODE){ //判斷是否是元素節點
          String
          name = node.getNodeName();
          //根據節點的類型返回節點的名稱
          String value =
          node.getTextContent();
          //得到節點里的值(一組值)
          System.out.println(name +
          " "
          +value);
          }
          }
          }

          }
          catch (ParserConfigurationException e)
          {
          e.printStackTrace();
          } catch (SAXException
          e) {
          e.printStackTrace();
          } catch
          (IOException e)
          {
          e.printStackTrace();
          }

          }

          posted on 2012-04-22 15:32 hantai 閱讀(79) 評論(0)  編輯  收藏


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


          網站導航:
           
          主站蜘蛛池模板: 镇安县| 涞源县| 离岛区| 江油市| 于都县| 朝阳区| 广汉市| 阳高县| 台山市| 齐河县| 宝鸡市| 松原市| 灵山县| 子洲县| 库车县| 新疆| 苍溪县| 砚山县| 习水县| 盐津县| 三台县| 崇阳县| 芜湖市| 高安市| 阿拉善左旗| 衡阳县| 安福县| 承德市| 广安市| 巫溪县| 灵山县| 庄河市| 武清区| 长岛县| 石棉县| 巴林右旗| 资源县| 交口县| 石城县| 珠海市| 玉溪市|