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

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

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

    Read Sean

    Read me, read Sean.
    posts - 508, comments - 655, trackbacks - 9, articles - 4

    [XML學習筆記][3.1]通過JAXP使用SAX

    Posted on 2005-02-24 22:13 laogao 閱讀(279) 評論(0)  編輯  收藏 所屬分類: On Java

    在前面的筆記中,我們曾經提到讀取XML數據的兩種截然不同的方式,SAX就是其中一種。來看一段代碼:

    /*
     * Created on 2005-2-24
     * All rights reserved.
     * 
     
    */

    package sean.home.test;

    import java.io.File;

    import javax.xml.parsers.SAXParser;
    import javax.xml.parsers.SAXParserFactory;

    import org.xml.sax.Attributes;
    import org.xml.sax.SAXException;
    import org.xml.sax.helpers.DefaultHandler;

    /**
     * @author Sean GAO
     *         <p>
     *         gaoyuxiang@gmail.com
     *         </p>
     * 
     
    */

    public class Main {

        
    public static void main(String[] args) throws Exception {

            SAXParserFactory factory 
    = SAXParserFactory.newInstance();
            SAXParser parser 
    = factory.newSAXParser();

            DefaultHandler myHandler 
    = new DefaultHandler() {

                
    public void startDocument() throws SAXException {
                    System.
    out.println("XML document starts ");
                }


                
    public void endDocument() throws SAXException {
                    System.
    out.println("XML document ends ");
                }


                
    public void startElement(String uri, String localName,
                        String qualifiedName, Attributes attributes)
                        throws SAXException 
    {
                    System.
    out.println("element " + qualifiedName + "starts ");
                }


                
    public void endElement(String uri, String localName,
                        String qualifiedName) throws SAXException 
    {
                    System.
    out.println("element " + qualifiedName + "ends ");
                }


                
    public void characters(char[] ch, int start, int length) {
                    System.
    out.println(new String(ch, start, length));
                }


            }
    ;
            
            parser.parse(
    new File(args[0]), myHandler);
            
        }

    }



    在這段代碼中,我們通過SAXParserFactory獲取一個parser,然后自定義一個Handler去處理由SAX讀取XML文件時觸發的事件,如startDocument表示文檔開始,endElement表示元素讀取結束,characters表示在元素體內讀到內容等等。這里我為了方便直接寫成匿名內部類了,Exception也沒有做任何處理,這在實際中通常是不合理的。

    基本上SAX的實現和使用都很直截了當,就是處理一個個事件罷了。
    主站蜘蛛池模板: 狠狠色香婷婷久久亚洲精品| 亚洲自偷自拍另类12p| 亚洲人成色99999在线观看| 日韩精品无码一区二区三区免费| 免费阿v网站在线观看g| 免费jjzz在在线播放国产| 亚洲精品永久在线观看| 成年轻人网站色免费看| 亚洲依依成人亚洲社区| 天天天欲色欲色WWW免费| 午夜亚洲WWW湿好爽| 最新69国产成人精品免费视频动漫| 亚洲人成电影网站免费| 国产免费人人看大香伊| 人人爽人人爽人人片A免费 | 日本免费污片中国特一级| 亚洲AV无码乱码在线观看裸奔 | 在线观看午夜亚洲一区| 亚洲国产免费综合| 亚洲成A人片在线观看WWW| 97在线视频免费| 亚洲免费福利在线视频| 免费人成在线观看视频播放| 成人免费777777被爆出| 亚洲男人天堂av| 免费中文熟妇在线影片| 一级做a爰片性色毛片免费网站| 好看的亚洲黄色经典| 免费能直接在线观看黄的视频 | 狠狠久久永久免费观看| 一个人看的在线免费视频| 亚洲AV无码精品色午夜果冻不卡 | 九九综合VA免费看| 亚洲国产精品自在在线观看 | 黑人大战亚洲人精品一区| 16女性下面无遮挡免费| 国产亚洲美女精品久久久久| 亚洲人成影院在线无码按摩店| 99久久这里只精品国产免费| 免费激情网站国产高清第一页| 中文字幕亚洲免费无线观看日本 |