SAX解析XML

原创 2013年12月04日 09:48:27

SAX工作原来就是对文档进行顺序扫描,当扫描文档、元素的开始与结束等地方时通知事件处理函数——startDocument()、endDocument()、startElement()、endElement()等等

 

ContentHandler是JAVA类包中一个特殊的SAX接口,位于org.xml.sax包中,它包含了很多接口需要实现,因为我们只需要其中复写某一部分的代码,所以没有必要实现接口的全部内容,所以我们一般继承它的子类DefaultHandler

 

public class SAXxmlActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
		try {
			//得到SAX解析工厂
			SAXParserFactory saxFactory = SAXParserFactory.newInstance();
			//通过SAX解析工厂得到SAX解析器
			SAXParser saxParser = saxFactory.newSAXParser();
			//得到读取XML文件流对象
			XMLReader xmlReader = saxParser.getXMLReader();
			//设置数据元,即要操作的数据流句柄
			xmlReader.setContentHandler(new ReadXML());
			//解析XML文件
			xmlReader.parse(new InputSource(new FileInputStream("/sdcard/connection.xml")));
		} catch (ParserConfigurationException e) {
			System.out.println("1");
		} catch (SAXException e) {
			System.out.println("2");
		} catch (FileNotFoundException e) {
			System.out.println("3");
		} catch (IOException e) {
			System.out.println("4");
		}
    }
}

 

 

解析XML文件监听的事件

 

public class ReadXML extends DefaultHandler {
	@Override
	public void startDocument() throws SAXException {
		System.out.println("startDocument");
	}
	@Override
	public void endDocument() throws SAXException {
		System.out.println("endDocument");
	}
	@Override
	public void endElement(String uri, String localName, String qName)
			throws SAXException {
		System.out.println("uri : " + uri);
		System.out.println("localName : " + localName);
		System.out.println("qName : " + qName);
	}
	@Override
	public void startElement(String uri, String localName, String qName,
			Attributes attributes) throws SAXException {
		System.out.println("startElement");
	}
}

 

SAX类解析XML

  • 2016年06月17日 12:03
  • 1.47MB
  • 下载

Java SAX解析Xml文档Demo

  • 2017年08月18日 14:12
  • 13KB
  • 下载

使用SAX解析XML文件

SAX(Simple API for XML),是指一种接口,或者一个软件包。   DOM:文档驱动。DOM在解析文件之前把整个文档装入内存,处理大型文件时其性能很差,是由于DOM的树结构所造成的...

xml sax解析

  • 2016年07月29日 09:38
  • 9KB
  • 下载

XML SAX解析

  • 2014年09月19日 17:41
  • 1.11MB
  • 下载

java学习脚印:SAX解析xml时命名空间以及参数问题(敏捷版)

java学习脚印:SAX解析xml时命名空间以及localName等参数问题 本文以实例形式解释下java利用SAX解析xml时命名空间及其参数问题。 关于为什么要使用,以及怎么使用命名空间的问题,...

sax标准解析XML

  • 2013年08月21日 10:13
  • 147KB
  • 下载

android使用SAX解析xml

  • 2014年08月24日 22:46
  • 10KB
  • 下载

Android 个人学习笔记之---SAX解析XML文件(有一个坑爹的问题)

今天晚上我学习了下XML的解析,解析XML方法有SAX和DOM解析和Pull解析,今天先学习了下SAX,每天8点下班,下班回来还要自己做饭,所以每天我都要奋斗到1点左右,然后早上8点起来做饭带到公司去...

XML(SAX与DOM解析)内附实例与PPT

  • 2008年11月10日 19:37
  • 168KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SAX解析XML
举报原因:
原因补充:

(最多只允许输入30个字)