NameSpace.java~6~
上传用户:liming9091
上传日期:2014-10-27
资源大小:3376k
文件大小:1k
源码类别:

Java编程

开发平台:

Java

  1. /**********************************************************************
  2.  这个类的作用就是打印出XML文档中元素以及属性的名称空间名
  3. **********************************************************************/
  4. package tsinghuaip;
  5. import org.xml.sax.XMLReader;
  6. import org.xml.sax.Attributes;
  7. import org.xml.sax.SAXException;
  8. import org.xml.sax.helpers.DefaultHandler;
  9. import javax.xml.parsers.SAXParserFactory;
  10. import javax.xml.parsers.SAXParser;
  11. public class NameSpace extends DefaultHandler{
  12.     public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException{
  13.         print("Elem: " + qName, uri, localName );
  14.         for (int i = 0; i < atts.getLength(); i++){
  15.             print("Attr: " + atts.getQName(i) + "=" + atts.getValue(i),
  16.                   atts.getURI(i),
  17.                   atts.getLocalName(i));
  18.             System.out.println("here");
  19.         }
  20.     }
  21.     public void print(String t, String u, String l){
  22.         System.out.println(t);
  23.         System.out.println("URI: " + u);
  24.         System.out.println("Local name: " + l);
  25.         System.out.println("here");
  26.     }
  27.     public static void main(String[] args) throws Exception{
  28.         SAXParserFactory spf = SAXParserFactory.newInstance();
  29.         spf.setNamespaceAware(true);
  30.         XMLReader reader = spf.newSAXParser().getXMLReader();
  31.         reader.setFeature("http://xml.org/sax/features/namespace-prefixes", true);
  32.         reader.setContentHandler(new NameSpace());
  33.         reader.parse("TsinghuaIPAssign.xml");
  34.     }
  35. }