package lab.xml;
import java.io.PrintWriter;
import java.io.StringReader;
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 SaxMain extends DefaultHandler{
private PrintWriter out;
/**
* @param args
*/
public static void main(String[] args) throws Exception {
test(new PrintWriter(System.out));
}
public static void test(PrintWriter out) throws Exception {
out.println("start test");
SaxMain handler=new SaxMain();
handler.out=out;
SAXParserFactory factory=SAXParserFactory.newInstance();
SAXParser parser=factory.newSAXParser();
InputSource source=new InputSource(new StringReader("<table> <tr><td>cell1</td><td>cell2</td></tr></table>"));
parser.parse(source,handler);
out.println("done");
out.flush();
}
@Override
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
out.println("startElement:"+qName);
}
@Override
public void characters(char[] buf, int offset, int len) throws SAXException {
out.println("characters:"+new String(buf,offset,len));
}
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
out.println("endElement: " + qName);
}
}