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

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

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

    學習sax解析xml心得

    可以使用SAXParser的parse方法進行解析,也可以使用XmlReader的parse方法進行解析,但是最好是使用XmlReader,因為XmlReader是接口。
    基本的初始化方法如下:
    File f=new File("d:"+File.separator+"e.xml");
            InputSource ip=new InputSource(new FileInputStream(f));
            try {
                SAXParser  s=SAXParserFactory.newInstance().newSAXParser();
                XMLReader xmlReader=s.getXMLReader();
                xmlReader.setContentHandler(new MyHandler());
                xmlReader.parse(ip);
                
            } catch (ParserConfigurationException e) {
                e.printStackTrace();
            } catch (SAXException e) {
                e.printStackTrace();
            }

    其中MyHandler類繼承了DefaultHandler,可以overwrite其中的方法,使其滿足需求。
    例子:

    public void startElement(String uri, String localName, String name,
                    Attributes attributes) throws SAXException {

                if (logger.isInfoEnabled()) {
                    logger
                            .info("startElement(String, String, String, Attributes) - uri="
                                    + uri
                                    + ", localName="
                                    + localName
                                    + ", name="
                                    + name );
                }

                for (int i = 0; i < attributes.getLength(); i++) {
                    if (logger.isInfoEnabled()) {
                        logger.info("endElement(String, String, String) - uri=" + uri
                                + ", localName=" + localName + ", qName=" + attributes.getQName(i)+ ", attributes=" + attributes.getValue(i));
                    }
                }
                

                super.startElement(uri, localName, name, attributes);
            }
    //對text node的處理
    public void characters(char[] ch, int start, int length)
                    throws SAXException {
                if (logger.isInfoEnabled()) {
                    logger.info("characters(char[], int, int) - ch="+ new String(ch,start,length));//這里這樣子寫才能得到text node 真正的值。范圍: characters() 事件不僅包括不僅一個字符串。它還包括起始和長度信息。實際上,ch 字符數組包括整個文檔。應用程序一定不能嘗試讀取饋送給 characters() 事件的范圍之外的字符。
                }

                super.characters(ch, start, length);
            }


    posted on 2007-11-15 17:27 劉錚 閱讀(305) 評論(0)  編輯  收藏 所屬分類: XML

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    留言簿(1)

    文章分類(141)

    文章檔案(147)

    搜索

    最新評論

    主站蜘蛛池模板: 色妞WWW精品免费视频| 日本在线免费播放| 午夜小视频免费观看| 亚洲av无码专区在线| 亚洲电影免费观看| 亚洲成人在线免费观看| 最近中文字幕2019高清免费| 色拍自拍亚洲综合图区| 1000部无遮挡拍拍拍免费视频观看| 亚洲人成电影亚洲人成9999网| 日韩精品内射视频免费观看| 亚洲国产成人精品无码区在线网站| 很黄很黄的网站免费的| 精品亚洲456在线播放| 女性无套免费网站在线看| 久久精品熟女亚洲av麻豆| 亚洲成人国产精品| 97人妻精品全国免费视频 | 国产国拍精品亚洲AV片| 99久久成人国产精品免费 | 免费a级毛片无码a∨蜜芽试看| 精品久久亚洲中文无码| 日本不卡视频免费| 一日本道a高清免费播放| 亚洲高清在线视频| 日韩精品成人无码专区免费| 免费很黄无遮挡的视频毛片| 亚洲爆乳精品无码一区二区三区 | 911精品国产亚洲日本美国韩国| 999国内精品永久免费视频| 亚洲日韩一中文字暮| 亚洲乱码日产精品a级毛片久久 | 好男人看视频免费2019中文| 免费一级毛suv好看的国产网站| 综合亚洲伊人午夜网| 222www免费视频| 免费看一级高潮毛片| 亚洲视频免费在线看| 免费人成网站在线高清| 精品熟女少妇a∨免费久久| 亚洲国产精品嫩草影院|