XML基础教程2版第5章的代码代码.doc
文本预览下载声明
第5章SAX解析器
5.1 初识SAX解析器
例子1
example5_1.xml
?xml version=1.0 encoding=UTF-8 ?
雇员列表
雇员
姓名 张小三 /姓名
性别 男 /性别
/雇员
/雇员列表
import org.xml.sax.helpers.*;
import org.xml.sax.*;
import java.io.*;
public class SAXOne{
public static void main(String args[]){
try{ File file=new File(example5_1.xml);
SAXParserFactory factory=SAXParserFactory.newInstance() ;
SAXParser saxParser=factory.newSAXParser();
EventHandler handler=new EventHandler(); //事件处理器
saxParser.parse(file,handler);
System.out.println(事件处理器处理了+handler.count+个事件);
}
catch(Exception e){
System.out.println(e);
}
}
}
class EventHandler extends DefaultHandler{
int count=0;
public void startElement(String uri,String localName,String qName,Attributes atts){
System.out.print(+qName+);
count++;
}
public void endElement(String uri,String localName,String qName){
System.out.print(/+qName+);
count++;
}
public void characters(char[] ch,int start,int length){
String text=new String(ch,start,length);
System.out.print(text);
count++;
}
public void startDocument(){
System.out.println(开始解析XML文件);
count++;
}
public void endDocument(){
System.out.println(解析过程结束);
count++;
}
}
5.2 文档开始与结束事件
例子2
example5_2.xml
?xml version=1.0 encoding=UTF-8 ?
图书信息
图书
名称XML基础教程(第2版)/名称
价钱26元/价钱
/图书
图书
名称JSP基础教程(第二版)/名称
价钱28元/价钱
/图书
/图书信息
import javax.xml.parsers.*;
import org.xml.sax.helpers.*;
import org.xml.sax.*;
import java.io.*;
public class SAXTwo{
public static void main(String args[]){
try{ File file=new File(example5_2.xml);
SAXParserFactory factory=SAXParserFactory.newInstance() ;
SAXParser saxParser=factory.newSAXParser();
EventHandler handler=new EventHandler(file);
saxParser.parse(file,handler);
显示全部