使用SAX解析XML文件
来源:互联网 发布:设计程序的算法 编辑:程序博客网 时间:2024/05/14 08:01
准备文件:
文件名称:itcast.xml
public class SAXPersonService {
public List<Person> getPersons(InputStream inStream) throws Throwable{
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser parser = factory.newSAXParser();
PersonParser personParser = new PersonParser();
parser.parse(inStream, personParser);
inStream.close();
return personParser.getPersons();
}
private final class PersonParser extends DefaultHandler{
private List<Person> persons = null;
private String tag = null;
private Person person = null;
public List<Person> getPersons() {
return persons;
}
@Override
public void startDocument() throws SAXException {
persons = new ArrayList<Person>();
}
@Override
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
if("person".equals(localName)){
person = new Person();
person.setId(new Integer(attributes.getValue(0)));
}
tag = localName;
}
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
if(tag!=null){
String data = new String(ch, start, length);//获取文本节点的数据
if("name".equals(tag)){
person.setName(data);
}else if("age".equals(tag)){
person.setAge(new Short(data));
}
}
}
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
if("person".equals(localName)){
persons.add(person);
person = null;
}
tag = null;
}
}
}
- 使用SAX解析XML文件(SAX解析)
- 使用SAX解析XML文件
- 使用sax解析xml文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用sax解析xml文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用SAX解析XML文件
- 使用SAX解析xml文件
- 使用SAX解析XML文件
- 一些好的书籍
- oracle分页(使用rownum[伪列])
- oracle创建使用索引,查询索引状态
- oracle创建和使用视图
- Oracle创建索引,修改索引,使用同义词
- 使用SAX解析XML文件
- Oracle创建表,修改表的结构
- 一个有趣的C++问题
- 【算法导论】最小生成树(prim算法)
- Oracle操作(解锁用户,修改密码,无密码登录,创建表空间,赋权)
- defy 超频/降频CPU设置
- 深入理解C/C++数组和指针
- Oracle创建表空间并赋权
- pipe的使用