青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

為生存而奔跑

   :: 首頁 :: 聯系 :: 聚合  :: 管理
  271 Posts :: 0 Stories :: 58 Comments :: 0 Trackbacks

留言簿(5)

我參與的團隊

搜索

  •  

積分與排名

  • 積分 - 331733
  • 排名 - 74

最新評論

閱讀排行榜

評論排行榜

SAX采用的是事件驅動模型。需要先定義一些方法,解析器解析時,當觸發事件時,會自動調用響應的已經定義好的方法。一般要重寫的方法有:
Start document   //開始解析時的事件
startElement(String uri, String localName, String qName, Attributes attr)  //遇到一個元素的開始時的事件
characters( char[] chars, int start, int length ) //遇到的文本。start表示文本在數組chars中的開始位置,length表示文本的長度
endElement(String uri, String localName, String qName) //遇到元素結束標記時的事件


對于下面的XML

<?xml version="1.0" encoding="gb2312"?>
<student>
    
<person age="25"><!--如果沒有age屬性,默認的為20-->
        
<name>崔衛兵</name>
        
<college>PC學院</college>
        
<telephone>62354666</telephone>
        
<notes>男,1982年生,碩士,現就讀于北京郵電大學</notes>
    
</person>
    
<person>
        
<name>cwb</name>
        
<college leader="leader1">PC學院</college><!--如果沒有leader屬性,默
認的為leader
-->
        
<telephone>62358888</telephone>
        
<notes>男,1987年生,碩士,現就讀于中國農業大學</notes>
    
</person>
    
<person age="45">
        
<name>xxxxx</name>
        
<college leader="學院領導">xxx學院</college>
        
<telephone>66666666</telephone>
        
<notes>注視中,注釋中</notes>
    
</person>
</student>

通過下面的程序解析后,可以把每個標簽中的內容提取出

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

import org.xml.sax.*;
import org.xml.sax.helpers.DefaultHandler;

import java.io.*;

public class TestSAX extends DefaultHandler{

    
public TestSAX(){
        
super();
    }

    
    
public void startElement(String uri, String localName, String qName, Attributes atts)throws SAXException{
        
/*if(qName.equalsIgnoreCase("person")){
            String age=atts.getValue("age");
            if(age!=null)
                System.out.println("age: "+age);
            else System.out.println("age: 20");
        }
        else if(qName.equalsIgnoreCase("name")){
            tagName="name";
        }
        else if(qName.equalsIgnoreCase("college")){
            tagName="college";
        }
        else if(qName.equalsIgnoreCase("telephone")){
            tagName="telephone";
        }
        else if(qName.equalsIgnoreCase("notes")){
            tagName="notes";
        }
*/

        
if("person".equals(qName)){
            String age
=atts.getValue("age");
            
if(age!=null)
                System.out.println(
"age: "+age);
            
else System.out.println("age: 20");
        }

        
if("name".equals(qName) || "college".equals(qName) || "telephone".equals(qName) || "notes".equals(qName))
            tagName
=qName;
        
    }

    
    
public void characters(char[] ch, int start, int length)throws SAXException{
        String text
=new String(ch,start,length);
        
/*if(tagName.equals("name")) System.out.println("name: "+text);
        else if(tagName.equals("college")) System.out.println("college: "+text);
        else if(tagName.equals("telephone")) System.out.println("telephone: "+text);
        else if(tagName.equals("notes")) System.out.println("notes: "+text);
*/

        
        
if("name".equals(tagName)){
            System.out.println(
"name: "+text);
        }

        
else if("college".equals(tagName)){
            System.out.println(
"college: "+text);
        }

        
else if("telephone".equals(tagName)){
            System.out.println(
"telephone: "+text);
        }

        
else if("notes".equals(tagName)){
            System.out.println(
"notes: "+text);
        }

        tagName
=null;
    }

    
    
private String tagName=null;
    
    
public static void main(String[] args) {
        
// TODO Auto-generated method stub
        try{
            TestSAX testSAX
=new TestSAX();
            SAXParserFactory factory
=SAXParserFactory.newInstance();
            SAXParser parser
=factory.newSAXParser();
            parser.parse(
new File("E:/我的文檔/tmp/test.xml"), testSAX);
        }

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

    }


}



注意程序中注釋的內容,它本來與外面的代碼按說是等價的,但是如果用注釋里面的代碼就會出錯。或許是因為當參數為null時,也會觸發startElement和characters事件,這樣,在空的string對象上調用equals就會出錯

posted on 2010-04-21 19:49 baby-fly 閱讀(664) 評論(0)  編輯 收藏 引用 所屬分類: Java
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧美国产一区二区三区| 亚洲欧美日韩爽爽影院| 欧美在线一区二区| 亚洲欧洲一级| 99精品欧美| 欧美视频在线观看一区| 夜夜嗨av一区二区三区中文字幕| 欧美激情一区二区三区在线视频| 国产免费观看久久| 免费视频一区| 国产一区欧美日韩| 一本色道久久综合亚洲精品婷婷| 宅男噜噜噜66一区二区66| 国产精品任我爽爆在线播放| 午夜在线观看免费一区| 亚洲一区二区在线免费观看| 亚洲在线播放| 一本在线高清不卡dvd| 亚洲欧美不卡| 久久成人在线| 欧美高清视频www夜色资源网| 亚洲国产成人一区| 日韩一级裸体免费视频| 欧美在线亚洲一区| 欧美aa国产视频| 国产精品a久久久久久| 一区二区三区在线看| 一区二区三区日韩欧美| 久久久91精品国产一区二区三区| 欧美国产精品日韩| 亚洲在线免费| 欧美精品1区2区| 狠狠入ady亚洲精品| 亚洲天堂视频在线观看| 欧美sm极限捆绑bd| 亚洲欧美日本日韩| 欧美国产日韩一区二区| 国产一区视频网站| 亚洲永久视频| 亚洲精品视频在线播放| 久久精品欧美日韩精品| 国产精品久久久亚洲一区 | 亚洲精品乱码视频| 欧美主播一区二区三区| 国产精品久久久久av| 亚洲国产清纯| 欧美69wwwcom| 久久成人18免费观看| 国产乱人伦精品一区二区| 亚洲视频在线观看免费| 亚洲国产精品精华液2区45 | 欧美日韩三级| 亚洲精美视频| 欧美成年人视频| 欧美自拍丝袜亚洲| 国产午夜久久久久| 久久不射2019中文字幕| 亚洲天堂av在线免费| 国产精品swag| 亚洲欧美激情在线视频| 一本到高清视频免费精品| 欧美日本三区| 亚洲一区二区三区高清| 一区二区三区视频在线播放| 欧美日韩网址| 性刺激综合网| 欧美尤物一区| 亚洲第一精品夜夜躁人人躁| 欧美黑人国产人伦爽爽爽| 欧美电影免费观看网站| 99精品国产一区二区青青牛奶| 亚洲第一二三四五区| 国产精品r级在线| 黄色av一区| 久久精品久久综合| 久久精品日产第一区二区三区| 国产亚洲一本大道中文在线| 久久夜色精品国产噜噜av| 欧美一区视频在线| 伊人久久大香线| 亚洲黄色视屏| 国产精品久久久久久久午夜片| 欧美在线观看视频在线| 久久久亚洲高清| 亚洲精品日韩激情在线电影| 一区二区三区日韩精品| 国产一区日韩二区欧美三区| 欧美高清在线一区| 欧美三级资源在线| 欧美中文字幕视频| 免费成人av| 午夜欧美不卡精品aaaaa| 久久久亚洲国产天美传媒修理工 | 一区三区视频| 日韩一级大片| 国内在线观看一区二区三区 | 欧美成人一区二区| 欧美日韩一区在线视频| 久久久之久亚州精品露出| 欧美mv日韩mv国产网站| 午夜精品一区二区三区四区| 久久精品国产亚洲一区二区三区| 日韩一级黄色大片| 欧美影片第一页| 亚洲欧美久久久久一区二区三区| 久久―日本道色综合久久| 亚洲深夜影院| 欧美成人精品激情在线观看| 午夜精品影院| 欧美日韩精品综合| 久久亚洲综合| 国产精品欧美久久| 最新高清无码专区| 一区三区视频| 性欧美1819sex性高清| 日韩视频亚洲视频| 久久婷婷国产综合精品青草| 久久gogo国模啪啪人体图| 欧美日韩亚洲91| 亚洲国产精品一区| 亚洲国产天堂久久综合| 久久国产精品99国产| 午夜在线电影亚洲一区| 国产精品国产三级国产专播精品人 | 欧美精品一区二区三区蜜臀| 久久久一区二区| 亚洲图片在线观看| 另类酷文…触手系列精品集v1小说| 亚洲在线观看| 欧美新色视频| 99视频精品免费观看| 日韩一级大片在线| 欧美顶级艳妇交换群宴| 欧美成人乱码一区二区三区| 激情一区二区三区| 久久成人久久爱| 久久综合国产精品| 一区二区在线视频| 久久美女艺术照精彩视频福利播放| 久久精品盗摄| 黄色成人av在线| 久久综合网hezyo| 欧美国产日韩a欧美在线观看| 1024成人| 欧美国产一区二区在线观看| 亚洲黄色天堂| 亚洲一区激情| 国产伦精品一区二区三区视频黑人| 一本久道综合久久精品| 亚洲性视频网址| 国产欧美精品xxxx另类| 亚欧成人精品| 欧美大片一区二区三区| 亚洲靠逼com| 欧美巨乳在线观看| 一区二区三区国产在线观看| 亚久久调教视频| 一色屋精品视频免费看| 蜜臀久久99精品久久久久久9| 亚洲国产婷婷| 欧美一区影院| 在线免费不卡视频| 欧美日韩福利| 亚洲欧美日韩在线综合| 毛片一区二区| 亚洲视频免费在线观看| 国产欧美精品日韩精品| 浪潮色综合久久天堂| 99热在这里有精品免费| 久久久7777| 妖精视频成人观看www| 国产精品综合久久久| 免费人成网站在线观看欧美高清| 日韩视频在线观看免费| 久久久久免费视频| 日韩亚洲一区在线播放| 国产一区二区无遮挡| 欧美成人午夜激情| 久久国产精品亚洲77777| 99这里只有精品| 欧美成人精品福利| 欧美在线1区| 亚洲小视频在线观看| 亚洲精品看片| 在线成人性视频| 国产精品一区一区| 欧美人交a欧美精品| 久久人人精品| 久久99伊人| 亚洲免费视频成人| 91久久精品www人人做人人爽 | 性做久久久久久久免费看| 91久久久一线二线三线品牌| 国产精品亚洲产品| 欧美日韩日日夜夜| 欧美成人有码| 欧美视频在线一区二区三区| 国产日产亚洲精品系列| 欧美日本一道本| 免费成人美女女|