SAX:
一、读取文件
1、data.xml
<?xml version="1.0" encoding="UTF-8"?>
<books>
<book>
<no>00001</no>
<name>DOM4J</name>
</book>
<book>
<no>00002</no>
<name>JDOM</name>
</book>
</books>
2、TestSAX.java
import java.util.Stack;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.Attributes;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class TestSAX extends DefaultHandler{
Stack tags = new Stack();
public TestSAX(){
super();
}
public static void main(String[] args) {
try {
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
TestSAX testSAX = new TestSAX();
parser.parse(new InputSource("data.xml"),testSAX);
} catch (Exception e) {
e.printStackTrace();
}
}
public void characters(char ch[],int start,int length)throws SAXException{
String tag = (String)tags.peek();
if(tag.equals("no")){
System.out.println("NO:"+new String(ch,start,length));
}
if(tag.equals("name")){
System.out.println("NAME:"+new String(ch,start,length));
}
}
public void startElement(String uri,String localName,String qName,Attributes attrs){
tags.push(qName);
}
}
SAX 实例
最新推荐文章于 2023-03-06 23:24:03 发布