2 u012582435 u012582435 于 2014.03.09 22:21 提问

sax解析xml,Tag的设置

Tag在startElement方法执行后变为book,那在character方法中是如何判断preTag的?

public void startDocument() throws SAXException {

books = new ArrayList();

}

@Override  
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {  
    if("book".equals(qName)){  
        book = new Book();  
        book.setId(Integer.parseInt(attributes.getValue(0)));  
    }  
    preTag = qName;//将正在解析的节点名称赋给preTag  
}  

[size=1em]

@Override

public void characters(char[] ch, int start, int length) throws SAXException {

if(preTag!=null){

String content = new String(ch,start,length);

if("name".equals(preTag)){

book.setName(content);

}else if("price".equals(preTag)){

book.setPrice(Float.parseFloat(content));

}

}

}

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
sax解析xml文件实例一(注意endElement 内部最后 currentTag=null)
本文重点两点:1.再一次解析一个xml,验证之前的理解。 2. 发现endElement内最后一定要 currentTag = null ------------------------------------------------------------------------------------------------------------------ 注意:一定要在endEle
解析xml方式之SAX,流模式解析
1.基本的xml文档<?xml version="1.0" encoding="UTF-8" ?> <persons> <person> <name>Jim</name> <age>45</age> </person> <person> <name>Ann</name> <age>36</age> </p
sax解析 得到xml文档所有内容和获取指定标签的值
//得到xml文档所有内容 package cn.itcast.sax; import java.io.IOException; import javax.xml.parsers.ParserConfigurationException; import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParserFactory
sax解析xml运行出现错误
sax解析xml运行出现错误org.xml.sax.SAXParseException: Content is not allowed in prolog.   原因及其解决办法: 1.xml编码错误 该xml是UTF-8编码的,如果该文件通过UltraEdit编辑后,会在无BOM头的UTF-8文件中加入BOM,但是DOM4j不认这个BOM(dom4j1.3),解决的办法可以通过升级d
android 自学日记(六) ——SAX解析中换行问题解决
今天在写一个小项目的时候用到了SAX解析,遇到了一点小问题,网上找了好久都没有解决,最后还是自己发现了解决方法,特地和大家分享一下!
SAX解析XML-说明及示例代码
SAX解析XML文件
python3使用sax操作xml
python使用SAX解析xml SAX是一种基于事件驱动的API。 利用SAX解析XML文档牵涉到两个部分:解析器和事件处理器。 解析器负责读取XML文档,并向事件处理器发送事件,如元素开始跟元素结束事件; 而事件处理器则负责对事件作出相应,对传递的XML数据进行处理。 1、对大型文件进行处理; 2、只需要文件的部分内容,或者只需从文件中得到特定信息。 3、想建立自己的对象模型的时
XML两种解析思想:DOM和SAX
一、什么是XML英文全称为Extensible Markup Language,翻译过来为可扩展标记语言。现实生活中存在着大量的数据,在这些数据之间往往存在一定的关系,我们希望能在计算机中保存和处理这些数据的同时能够保存和处理他们之间的关系。XML就是为了解决这样的需求而产生数据存储格式。在XML语言中,它允许用户自定义标签。每一个标签用于描述一段数据; 一个标签可以分为开始标签和结束标签,在开始
XML解析之SAX解析过程代码详解
上一篇谢了解析原理和过程,这里应用代码直观认识这个原理: 新建Demo1类: import java.io.File; import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParserFactory; /** * 第一个SAX读取xml文件程序 * @author APPle * */ public cl
SAX解析xml characters方法要注意的问题
前段时间,在写一段解析xml的代码时发现了一个问题。我用的是SAX,这确实是很简单好用的一个东东。我们只需要继承DefaulHandler ,实现其中的方法即可。但是我们要注意到,其中的 characters 方法在解析一个节点的时候是可能会执行多次的。 假设我们的 persons.xml 文件如下: 前段时间,在写一段解析xml的代码时发现了一个问题。我用的是SAX,这确实是