文档章节

Android使用SAX解析XML(1)

M
 MSTK
发布于 2014/08/05 17:15
字数 652
阅读 2
收藏 0

可扩展标记语言XML是一种数据交换格式,允许用户自己定义,适合Web传输,能提供独立于程序的数据。XML在Android中也有广泛的应用,Android解析XML的方法有很多,本文介绍使用SAX(Simple API for XML)解析XML。

需要解析的infor.XML文件:

<?xml version="1.0" encoding="utf-8"?>
<infor>
  <School Name="计算机学院" Code="CS">
    <Major Name="计算机应用" Code="CA">
      <Class Name="计算机应用10级" Code="CA10"/>
      <Class Name="计算机应用11级" Code="CA11"/>
      <Class Name="计算机应用12级" Code="CA12"/>
      <Class Name="计算机应用13级" Code="CA13"/>
    </Major>
	<Major Name="计算机软件" Code="CW">
      <Class Name="计算机软件10级" Code="CW10"/>
      <Class Name="计算机软件11级" Code="CW11"/>
      <Class Name="计算机软件12级" Code="CW12"/>
      <Class Name="计算机软件13级" Code="CW13"/>
    </Major>
   <Major Name="计算机网络" Code="NW">
      <Class Name="计算机网络10级" Code="NW10"/>
      <Class Name="计算机网络11级" Code="NW11"/>
      <Class Name="计算机网络12级" Code="NW12"/>
      <Class Name="计算机网络13级" Code="NW13"/>
    </Major>
  </School>
  <School Name="电子学院" Code="EE">
    <Major Name="电子工程" Code="ER">
      <Class Name="电子工程10级" Code="ER10"/>
      <Class Name="电子工程11级" Code="ER11"/>
      <Class Name="电子工程12级" Code="ER12"/>
      <Class Name="电子工程13级" Code="ER13"/>
    </Major>
	<Major Name="通信工程" Code="CR">
      <Class Name="通信工程10级" Code="CR10"/>
      <Class Name="通信工程11级" Code="CR11"/>
      <Class Name="通信工程12级" Code="CR12"/>
      <Class Name="通信工程13级" Code="CR13"/>
    </Major>
  </School>
  <School Name="管理学院" Code="BS">
    <Major Name="企业管理" Code="EM">
      <Class Name="企业管理10级" Code="EM10"/>
      <Class Name="企业管理11级" Code="EM11"/>
      <Class Name="企业管理12级" Code="EM12"/>
      <Class Name="企业管理13级" Code="EM13"/>
    </Major>
    <Major Name="会计" Code="AC">
      <Class Name="会计10级" Code="AC10"/>
      <Class Name="会计11级" Code="AC11"/>
      <Class Name="会计12级" Code="AC12"/>
      <Class Name="会计13级" Code="AC13"/>
    </Major>
  </School>
</infor>

该文件最上层是几个学院,每个学院下面有若干个专业,每个专业下面是若干个班级。需要解析的XML文件一般放在res的raw文件夹下面。

建立4个类:infor.java对应xml文件中的infor节点,school.java对应学院,major.java对应专业,clas.java对应班级。这4个类的包含关系为infor.java>school.java>major.java>clas.java。

infor类包含了一个school列表,可以增加、返回该school列表。

package com.hzhi.my_sax;

import java.util.ArrayList;

public class infor {
	
	public static final String TAG_NAME = "infor";
	
	// 学院列表
	public ArrayList<school> schools;
	
	// 构造函数
	public infor(){
		this.schools = new  ArrayList<school>();
	}
	
	// 增加一个学院
	public void add_school(school s){
		this.schools.add(s);
	}
	
	// 返回学院列表
	public ArrayList<school> get_schools(){
		return this.schools;
	}

}

本文转载自:http://www.cnblogs.com/mstk/p/3478287.html

M
粉丝 0
博文 43
码字总数 0
作品 0
成都
私信 提问
Android 创建与解析XML(一)—— 概述

Android 是最常用的智能手机平台,XML 是数据交换的标准媒介,Android 中可以使用标准的XML生成器、解析器、转换器 API,对 XML 进行解析和转换。 XML,相关有DOM、SAX、JDOM、DOM4J、Xerce...

长平狐
2013/01/06
170
0
Android 创建与解析XML(六)—— 比较与使用

前面介绍了四种创建、解析XML的方式: 0、 Android 创建与解析XML(一)—— 概述 1、 Android 创建与解析XML(二)—— Dom方式 2、 Android 创建与解析XML(三)—— Sax方式 3、 Android ...

长平狐
2013/01/06
1K
0
Android读写XML(上)

注明:本文转自http://www.moandroid.com. 原文地址: http://www.moandroid.com/?p=508 XML 经常用作 Internet 上的一种数据格式,其文件格式想必大家都比较清楚,在这里我结合Android平台,...

晨曦之光
2012/03/01
398
0
android解析xml文档的各种方法

在Android平台上可以使用Simple API for XML(SAX) 、 Document Object Model(DOM)和Android附带的pull解析器解析XML文件。 下面是本例子要解析的XML文件: 文件名称:itcast.xml <?xml vers...

amigos_wu
2013/05/03
387
0
SVG前戏—让你的View多姿多彩

什么是SVG SVG的全称是Scalable Vector Graphics,叫可缩放矢量图形。是一种基于可扩展标记语言(XML)。它和位图(Bitmap)相对,SVG不会像位图一样因为缩放而让图片质量下降。它的优点在于...

codeGoogle
2018/08/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OpenStack 简介和几种安装方式总结

OpenStack :是一个由NASA和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenSta...

小海bug
昨天
6
0
DDD(五)

1、引言 之前学习了解了DDD中实体这一概念,那么接下来需要了解的就是值对象、唯一标识。值对象,值就是数字1、2、3,字符串“1”,“2”,“3”,值时对象的特征,对象是一个事物的具体描述...

MrYuZixian
昨天
6
0
数据库中间件MyCat

什么是MyCat? 查看官网的介绍是这样说的 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务、ACID、可以替代MySQL的加强版数据库 一个可以视为MySQL集群的企业级数据库,用来替代昂贵...

沉浮_
昨天
6
0
解决Mac下VSCode打开zsh乱码

1.乱码问题 iTerm2终端使用Zsh,并且配置Zsh主题,该主题主题需要安装字体来支持箭头效果,在iTerm2中设置这个字体,但是VSCode里这个箭头还是显示乱码。 iTerm2展示如下: VSCode展示如下: 2...

HelloDeveloper
昨天
7
0
常用物流快递单号查询接口种类及对接方法

目前快递查询接口有两种方式可以对接,一是和顺丰、圆通、中通、天天、韵达、德邦这些快递公司一一对接接口,二是和快递鸟这样第三方集成接口一次性对接多家常用快递。第一种耗费时间长,但是...

程序的小猿
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部