可扩展标记语言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;}}

更多相关文章

  1. 看雪学院-浅入浅出Android安全 笔记
  2. android串口通信——电子扫描枪
  3. Android开发者网址导航
  4. Android开发者网址导航
  5. Android(安卓)电子罗盘开发。
  6. android 开发之电子钢琴 源码
  7. 几本适合新手的Android电子书(提供下载)
  8. android新手学习帮助网址
  9. Android使用SAX解析XML(5)

随机推荐

  1. Android实现中文词组转大写字母
  2. ScrollView中的控件占据ScrollView的matc
  3. 使用h5+下载并打开文件,支持Android,IOS
  4. Android-Toast的使用方法详解
  5. Android常见系统广播
  6. Android(安卓)系统中WiFi的部署
  7. android froyo framework内RIL.java类分
  8. 关于Android(安卓)7.0下Launcher3下defau
  9. android功耗(9)----MTK功耗问题需要哪种log
  10. Android中自定义适配器的使用