最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java解析xml之dom解析xml示例分享

 更新時間:2014年01月05日 09:47:34   作者:  
DOM將整個XML文件加載到內存中,并構建出節(jié)點樹;應用程序可以通過遍歷節(jié)點樹的方式來解析XML文件中的各個節(jié)點、屬性等信息; 這種方式便于對XML節(jié)點的添加修改等,而且解析也很方便,然后它比較耗費內存,解析速度也不快,下面看使用示例吧

復制代碼 代碼如下:

package com.test;

import java.io.File;
import java.util.ArrayList;
import java.util.List;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

public class DomXML {

    public static void main(String[] args) {
        try {
            File file = new File("e:/People.xml"); 
            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();  
            DocumentBuilder builder = factory.newDocumentBuilder();  
            Document document = builder.parse(file);  
            Element element = document.getDocumentElement();

            List<People> peopleList = new ArrayList<People>();
            NodeList peopleNodes = element.getElementsByTagName("People");
            for(int i=0;i<peopleNodes.getLength();i++){  
                People people = new People();
                Element peopleElement = (Element) peopleNodes.item(i);
                people.setId(peopleElement.getAttribute("id"));
                NodeList childPeopleNodes = peopleElement.getChildNodes();
                for(int j=0;j<childPeopleNodes.getLength();j++){
                    //DOM解析時候注意子節(jié)點前面的空格也會被解析
                    if(childPeopleNodes.item(j) instanceof Element){
                        Element childPeopleElement = (Element) childPeopleNodes.item(j);
                        if(childPeopleElement.getNodeType()==Node.ELEMENT_NODE){ 
                            if(childPeopleElement.getNodeName().equals("Name")){
                                people.setEnglishName(childPeopleElement.getAttribute("en"));
                                people.setName(childPeopleElement.getTextContent());
                            }
                            else if(childPeopleElement.getNodeName().equals("Age")){
                                people.setAge(childPeopleElement.getTextContent());   
                            }
                        }
                    }
                }
                peopleList.add(people);
            }

            for(People people : peopleList){
                System.out.println(people.getId()+"\t"+people.getName()+"\t"+people.getEnglishName()+"\t"+people.getAge());
            }

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

       
    }
}

相關文章

  • 淺談JVM系列之從匯編角度分析NullCheck

    淺談JVM系列之從匯編角度分析NullCheck

    在virtual call中執(zhí)行nullcheck的時候,如果已經知道傳遞的參數是非空的。JIT會對代碼進行優(yōu)化嗎?本文將詳細介紹JVM系列之從匯編角度分析NullCheck。
    2021-06-06
  • 詳解Java阻塞隊列(BlockingQueue)的實現原理

    詳解Java阻塞隊列(BlockingQueue)的實現原理

    這篇文章主要介紹了詳解Java阻塞隊列(BlockingQueue)的實現原理,阻塞隊列是Java util.concurrent包下重要的數據結構,有興趣的可以了解一下
    2017-06-06
  • 詳解Java8中接口的默認方法和靜態(tài)方法

    詳解Java8中接口的默認方法和靜態(tài)方法

    Java 8是Java語言的一個重要版本,其中引入了許多新特性和改進,其中一個值得關注的特性是接口的默認方法和靜態(tài)方法,本文就來和大家簡單講講吧
    2023-05-05
  • 淺談Java編程中的synthetic關鍵字

    淺談Java編程中的synthetic關鍵字

    這篇文章主要介紹了淺談Java編程中的synthetic關鍵字的相關內容,包括其簡單的介紹和實例,需要的朋友可以了解下。
    2017-09-09
  • 關于swagger配置及踩坑@Api參數postion無效解決接口排序問題

    關于swagger配置及踩坑@Api參數postion無效解決接口排序問題

    這篇文章主要介紹了關于swagger配置及踩坑@Api參數postion無效解決接口排序問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • SpringMVC之AbstractAnnotationConfigDispatcherSer解讀

    SpringMVC之AbstractAnnotationConfigDispatcherSer解讀

    這篇文章主要介紹了SpringMVC之AbstractAnnotationConfigDispatcherSer,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 使用java操作elasticsearch的具體方法

    使用java操作elasticsearch的具體方法

    本篇文章主要介紹了使用java操作elasticsearch的具體方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • Java中的XML解析技術詳析

    Java中的XML解析技術詳析

    XML文檔是一個文檔樹,從根部開始,并擴展到樹的最底部,下面這篇文章主要給大家介紹了關于Java中XML解析技術的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-08-08
  • java實現圖片縮放、旋轉和馬賽克化

    java實現圖片縮放、旋轉和馬賽克化

    這篇文章主要為大家詳細介紹了java實現圖片縮放、旋轉和馬賽克化,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • 在Java中自由塊的執(zhí)行順序

    在Java中自由塊的執(zhí)行順序

    java中的自由塊分為靜態(tài)的自由塊和非靜態(tài)的自由塊。非靜態(tài)自由塊的執(zhí)行時間是:在執(zhí)行構造函數之前。靜態(tài)自由塊的執(zhí)行時間是:class文件加載時執(zhí)行。
    2013-04-04

最新評論

休宁县| 岳阳市| 新闻| 上高县| 阳春市| 建水县| 隆尧县| 宁河县| 双辽市| 永修县| 闽侯县| 哈尔滨市| 兴国县| 漳州市| 锡林郭勒盟| 南岸区| 沈丘县| 瑞安市| 克拉玛依市| 静海县| 宁乡县| 五原县| 渝中区| 营口市| 大冶市| 平利县| 辉县市| 峨眉山市| 沈阳市| 清丰县| 年辖:市辖区| 旌德县| 方城县| 清涧县| 育儿| 朝阳区| 绥中县| 枞阳县| 如东县| 乐平市| 卢氏县|