SAX方式解析xml

 

  
  
  
  
  1. package XMLday01;  
  2.  
  3. import java.io.File;  
  4.  
  5. import javax.xml.parsers.ParserConfigurationException;  
  6. import javax.xml.parsers.SAXParser;  
  7. import javax.xml.parsers.SAXParserFactory;  
  8.  
  9. import org.xml.sax.Attributes;  
  10. import org.xml.sax.SAXException;  
  11. import org.xml.sax.helpers.DefaultHandler;  
  12.  
  13. public class SaxTest {  
  14.  
  15.     public static void main(String[] args) throws Exception {  
  16.         test1();  
  17.     }  
  18.  
  19.     private static void test1() throws Exception {  
  20.         //javax.xml.parsers  
  21.         //sax解析器工厂  
  22.         //工厂创建sax解析器  
  23.         //解析  
  24.         SAXParserFactory factory=SAXParserFactory.newInstance();  
  25.         SAXParser parser=factory.newSAXParser();  
  26.         parser.parse(new File("E:\\1.xml"), new MyHandler());  
  27.     }  
  28.  
  29.     static class MyHandler extends DefaultHandler{  
  30.           
  31.         public void startDocument() throws SAXException{  
  32.             System.out.println("<?xml version='1.0'?>");  
  33.         }  
  34.           
  35.         public void startElement(String uri,String localName,String qName,Attributes attributes) throws SAXException{  
  36.             System.out.print("<"+qName);  
  37.             for(int i=0;i<attributes.getLength();i++){  
  38.                 String name=attributes.getQName(i);  
  39.                 String value=attributes.getValue(i);  
  40.                 System.out.print(" "+name+"=\""+value+"\"");  
  41.             }  
  42.             System.out.println(">");  
  43.         }  
  44.         public void endElement(String uri,String localName,String qName) throws SAXException{  
  45.             System.out.println("</"+qName+">");  
  46.         }  
  47.         public void characters(char[] ch,int start,int length) throws SAXException{  
  48.             String s=new String(ch,start,length);  
  49.             System.out.println(s);  
  50.         }  
  51.     }  
  52. }  

 

你可能感兴趣的:(职场,休闲,SAX方式解析xml)