import java.io.FileReader;
import org.apache.log4j.Logger;
import org.xml.sax.Attributes;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.DefaultHandler;
import org.xml.sax.helpers.XMLReaderFactory;
/**
* To parse a XML docment
* @author LLK
*
*/
public class Parser extends DefaultHandler{
private static Logger log = Logger.getLogger(Parser.class);
@Override
public void startElement(String uri, String localName, String name,
Attributes attributes) throws SAXException {
System.out.println("------------------------------------");
System.out.println("LocalName="+localName);
System.out.println("name="+name);
}
@Override
public void endElement(String uri, String localName, String name)
throws SAXException {
System.out.println("------------------------------------");
}
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
String value = new String(ch, start, length);
System.out.println("value="+value);
}
/**
*
* @param uri
*/
public static void parseXML(String uri){
try {
// 创建一个XML解析器 (使用默认的解析器)
XMLReader reader = XMLReaderFactory.createXMLReader();
reader.setContentHandler(new Parser());
InputSource inputSource=new InputSource(new FileReader(uri));
reader.parse(inputSource);
} catch (Exception e) {
e.printStackTrace();
}
}
// 测试main方法
public static void main(String[] args){
String xmlURI="D:/iWorkSpace/ssh_project/CMS/WebContent/WEB-INF/web.xml";
Parser.parseXML(xmlURI);
}
}