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

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

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

    posts - 4,comments - 30,trackbacks - 0

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;
    import java.io.Reader;
    import java.util.Iterator;

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

    import org.dom4j.Attribute;
    import org.dom4j.DocumentException;
    import org.dom4j.DocumentFactory;
    import org.dom4j.Element;
    import org.dom4j.io.SAXReader;
    import org.w3c.dom.Document;
    import org.w3c.dom.NamedNodeMap;
    import org.w3c.dom.Node;
    import org.w3c.dom.NodeList;
    import org.xml.sax.InputSource;
    import org.xml.sax.SAXException;

    public class XMLTest {

    ??? public void readXMLByDom(File thefile){
    ??????? BufferedReader bufferedReader = null;
    ??????? DocumentBuilder builder = null;
    ??????? Document doc = null;
    ??????? try {
    ??????????? bufferedReader = new BufferedReader(new FileReader(thefile));
    ??????? } catch ( FileNotFoundException e ) {
    ??????????? e.printStackTrace();
    ??????? }
    ???????
    ??????? InputSource inputsource = new InputSource(bufferedReader);
    ???????
    ??????? DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    ??????? try {
    ??????????? builder = factory.newDocumentBuilder();
    ??????? } catch ( ParserConfigurationException e ) {
    ??????????? e.printStackTrace();
    ??????? }
    ???????
    ??????? try {
    ??????????? doc = builder.parse(inputsource);
    //??????????? doc = builder.parse(thefile);
    ??????? } catch ( SAXException e ) {
    ??????????? e.printStackTrace();
    ??????? } catch ( IOException e ) {
    ??????????? e.printStackTrace();
    ??????? } finally{
    ??????????? try {
    ??????????????? bufferedReader.close();
    ??????????? } catch ( IOException e ) {
    ??????????????? e.printStackTrace();
    ??????????? }
    ??????? }
    ???????
    ??????? NodeList nList_01 = doc.getChildNodes();
    ??????? Node node = null;
    ??????? System.out.println("****************** First Level Node*******************");
    ??????? for ( int i = 0; i < nList_01.getLength(); i++ ) {
    ??????????? node = nList_01.item(i);
    ??????????? String temp1 = node.getNodeName();
    ??????????? System.out.println("Node " + (i+1) + " is :" + temp1);
    ???????????
    ??????????? if(node.hasChildNodes()){
    ??????????????? //attributes
    ??????????????? if ( node.hasAttributes() ) {
    ??????????????????? NamedNodeMap namedNodeMap = node.getAttributes();
    ??????????????????? System.out.println("############## Begin Attributes of " + temp1.toUpperCase() + " : ##############");
    ??????????????????? for ( int j = 0; j < namedNodeMap.getLength(); j++ ) {
    ??????????????????????? Node attrNode = namedNodeMap.item(j);
    ??????????????????????? System.out.println("~~~~~~attrNode "+ (j+1) + " is: " + attrNode.getNodeName() + "? Value is: " + attrNode.getNodeValue());
    ??????????????????? }
    ??????????????????? System.out.println("############## End Attributes of " + temp1.toUpperCase() + " : ##############");
    ??????????????? }
    ???????????????
    ??????????????? //child nodes
    ??????????????? System.out.println("================Begin Second Level Childern Under " + node.getNodeName().toUpperCase() + "=================");
    ??????????????? NodeList nList_02 = node.getChildNodes();
    ??????????????? for ( int j = 0; j < nList_02.getLength(); j++ ) {
    ??????????????????? node = nList_02.item(j);
    ??????????????????? String temp01 = node.getNodeName();
    ??????????????????? System.out.println("Node 0" + (j+1) + " is :" + temp01);
    ???????????????????
    ??????????????????? if ( node.hasChildNodes() ) {
    ??????????????????????? System.out.println("----------------Begin Third Level Childern Under " + node.getNodeName().toUpperCase() + "------------------");
    ??????????????????????? NodeList nList_03 = node.getChildNodes();
    ??????????????????????? for ( int k = 0; k < nList_03.getLength(); k++ ) {
    ??????????????????????????? node = nList_03.item(k);
    ??????????????????????????? System.out.println("Node 00" + (k+1) + " is :" + node.getNodeName() );
    ??????????????????????????? if ( !node.getNodeName().equals("#text") ) {
    ??????????????????????????????? System.out.println("Text within this node is: " + node.getTextContent());
    ??????????????????????????? }
    ??????????????????????? }
    ??????????????????????? System.out.println("----------------End Third Level Childern Under " + temp01.toUpperCase() + "------------------");
    ??????????????????? }
    ??????????????? }
    ??????????????? System.out.println("=================End Second Level Childern Under " + temp1.toUpperCase() + "================");
    ??????????? }
    ??????? }
    ??? }
    ???
    ??? public void readXMLByDom4j(File thefile){
    //??????? DocumentFactory factory = DocumentFactory.getInstance();
    //??????? SAXReader saxreader = new SAXReader(factory);
    ??????? BufferedReader bufferedreader = null;
    ??????? SAXReader saxreader = new SAXReader();
    ??????? org.dom4j.Document doc = null;
    ??????? try {
    ??????????? bufferedreader = new BufferedReader(new FileReader(thefile));
    ??????? } catch ( FileNotFoundException e ) {
    ??????????? e.printStackTrace();
    ??????? }

    ??????? try {
    ??????????? doc = ( org.dom4j.Document ) saxreader.read(bufferedreader);
    ??????? } catch ( DocumentException e ) {
    ??????????? e.printStackTrace();
    ??????? } finally{
    ??????????? try {
    ??????????????? bufferedreader.close();
    ??????????? } catch ( IOException e ) {
    ??????????????? e.printStackTrace();
    ??????????? }
    ??????? }
    ???????
    ??????? //iterate Nodes
    ??????? org.dom4j.Node node = null;
    ??????? int n = 1;
    ??????? Iterator it = doc.nodeIterator();
    ??????? System.out.println("========== iterate Nodes =========");
    ??????? while ( it.hasNext() ) {
    ??????????? node = ( org.dom4j.Node ) it.next();
    ??????????? System.out.println("Name of Node" +n++ + " is :" + node.getName());
    ??????????? System.out.println("Node type name is : " + node.getNodeTypeName()+"\n");
    ??????? }
    ???????
    ??????? //iterate Elements
    ??????? Element root = doc.getRootElement();
    ??????? System.out.println("Root Element : " + root.getName());
    ???????
    ??????? //iterate Elements underneath Root Element
    ??????? Element eleOfRoot = null;
    ??????? int l = 1;
    ??????? Iterator eleIt = root.elementIterator();
    ??????? System.out.println("========== iterate Elements underneath Root Element =========");
    ??????? while ( eleIt.hasNext() ) {
    ??????????? eleOfRoot = ( Element ) eleIt.next();
    ??????????? System.out.println("Element " + l++ + " underneath Root is :" + eleOfRoot.getName());
    ???????????
    ??????????? //grandchildren of Root Element
    ??????????? if ( eleOfRoot.hasMixedContent() ) {
    ??????????????? Element grandchild = null;
    ??????????????? int p = 1;
    ??????????????? Iterator grandIt = eleOfRoot.elementIterator();
    ??????????????? System.out.println("@@@@@@@@@@@@@@@@@ iterate Elements underneath " + eleOfRoot.getName() + " @@@@@@@@@@@@@@");
    ??????????????? while ( grandIt.hasNext() ) {
    ??????????????????? grandchild = ( Element ) grandIt.next();
    ??????????????????? System.out.println("Element " + 0+ p++ + " underneath " + eleOfRoot.getName() + " is :" + grandchild.getName());
    ??????????????? }
    ??????????????? System.out.println("");
    ??????????? }
    ??????? }
    ???????
    ??????? //iterate Attribute of Root Element
    ??????? Attribute attr = null;
    ??????? int m=1;
    ??????? Iterator attrIt = root.attributeIterator();
    ??????? System.out.println("========== iterate Attributes of Root Element =========");
    ??????? while ( attrIt.hasNext() ) {
    ??????????? attr = ( Attribute ) attrIt.next();
    ??????????? System.out.println("Attribute " + m++ + " is : " + attr.getName() + " ~~~ Value = " + attr.getValue());
    ???????????
    ??????? }
    ???????
    ??? }
    ???
    ??? public static void main( String[] args ) {
    ??????? XMLTest test= new XMLTest();
    ??????? File thefile = new File("F:\\build.xml");
    ??????? test.readXMLByDom(thefile);
    ??????? System.out.println("\n>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Below is with Dom4j<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
    ??????? test.readXMLByDom4j(thefile);
    ??? }
    }

    posted on 2007-08-22 15:36 蠻哥♂楓 閱讀(1638) 評論(1)  編輯  收藏 所屬分類: Java

    FeedBack:
    # re: [Source Code]使用Dom和dom4j讀取XML文件 [轉(zhuǎn)]
    2007-08-28 10:09 | 姜利陽
    使用Apache里面的Commons-Configuration項目
    將更加方便  回復(fù)  更多評論
      
    # re: [Source Code]使用Dom和dom4j讀取XML文件 [轉(zhuǎn)]
    2007-08-28 13:04 | tonyzhou00
    @姜利陽
    謝謝 有時間去研究一下  回復(fù)  更多評論
      
    主站蜘蛛池模板: 亚洲片一区二区三区| 亚洲精品成人a在线观看| 亚洲图片一区二区| 国产在线观a免费观看| 亚洲日韩精品一区二区三区无码 | 国产男女猛烈无遮挡免费视频| 国产精品亚洲午夜一区二区三区| 国产成人精品免费视频动漫| 亚洲国产精品乱码在线观看97| 久热中文字幕在线精品免费| 久久久久se色偷偷亚洲精品av | 日本免费在线中文字幕| 亚洲国产成人高清在线观看| 久久精品乱子伦免费| 亚洲AV乱码一区二区三区林ゆな| 国产成人久久AV免费| 亚洲va精品中文字幕| 国产免费变态视频网址网站| 国产免费人成视频尤勿视频 | 国产亚洲真人做受在线观看| 国产午夜无码精品免费看动漫 | 亚洲色少妇熟女11p| 免费观看亚洲人成网站| 国产日韩精品无码区免费专区国产| 亚洲人成在线播放网站| 1000部拍拍拍18勿入免费视频下载 | 久久国产乱子精品免费女| 亚洲欧洲春色校园另类小说| 久久久久久99av无码免费网站| 国产偷国产偷亚洲高清人| 国产午夜亚洲精品国产成人小说| 国产高清不卡免费视频| 亚洲国产成人综合精品| 国产精品亚洲产品一区二区三区 | 天天看免费高清影视| 一级做a爰性色毛片免费| 日韩亚洲Av人人夜夜澡人人爽| 我要看免费的毛片| 国产又黄又爽又大的免费视频| 亚洲一区二区影视| 国产精品亚洲综合一区|