安卓读取assets中的xml文件
来源:互联网 发布:蚂蚁分类信息5.8 源码 编辑:程序博客网 时间:2024/04/30 08:29
AssetManager asset = context.getAssets(); try { <span style="color:#FF0000;"><strong> InputStream input = asset.open("province_data.xml"); SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser parser = spf.newSAXParser(); 解析核心代码 XmlParserHandler handler = new XmlParserHandler(); parser.parse(input, handler); input.close();</strong></span> <span style="color:#33CC00;"> provinceList = handler.getDataList();</span> //只是返回数据 return provinceList; } catch (Throwable e) { e.printStackTrace(); } finally { }
import org.xml.sax.Attributes;import org.xml.sax.SAXException;import org.xml.sax.helpers.DefaultHandler;import java.util.ArrayList;import java.util.List;public class XmlParserHandler extends DefaultHandler {private List<ProvinceModel> provinceList = new ArrayList<ProvinceModel>(); public XmlParserHandler() {}<span style="color:#009900;">public List<ProvinceModel> getDataList() {return provinceList;}</span>@Overridepublic void startDocument() throws SAXException {}ProvinceModel provinceModel = new ProvinceModel();CityModel cityModel = new CityModel();DistrictModel districtModel = new DistrictModel();@Overridepublic void startElement(String uri, String localName, String qName,Attributes attributes) throws SAXException {if (qName.equals("province")) {provinceModel = new ProvinceModel();provinceModel.setName(attributes.getValue(0));provinceModel.setCityList(new ArrayList<CityModel>());} else if (qName.equals("city")) {cityModel = new CityModel();cityModel.setName(attributes.getValue(0));cityModel.setDistrictList(new ArrayList<DistrictModel>());} else if (qName.equals("district")) {districtModel = new DistrictModel();districtModel.setName(attributes.getValue(0));//districtModel.setZipcode(attributes.getValue(1));}}@Overridepublic void endElement(String uri, String localName, String qName)throws SAXException {if (qName.equals("district")) {cityModel.getDistrictList().add(districtModel); } else if (qName.equals("city")) { provinceModel.getCityList().add(cityModel); } else if (qName.equals("province")) { provinceList.add(provinceModel); }}@Overridepublic void characters(char[] ch, int start, int length)throws SAXException {}}
<?xml version="1.0" encoding="utf-8"?><root> <province name="安徽省"> <city name="安庆市"> <district name="枞阳县" zipcode="246000" /> <district name="大观区" zipcode="246000" /> <district name="桐城市" zipcode="246000" /> <district name="望江县" zipcode="246000" /> <district name="宜秀区" zipcode="246000" /> <district name="迎江区" zipcode="246000" /> <district name="岳西县" zipcode="246000" /> <district name="其他" zipcode="246000" /> </city> </province></root>
0 0
- 安卓读取assets中的xml文件
- 读取Assets中的文件
- 读取assets中的文件
- 安卓读取assets目录
- 读取Assets中的文件数据
- 读取assets目录中的文件
- Android读取assets中的文件
- 读取Assets文件夹中的文件
- 读取Assets文件夹中的文件
- 安卓assets隐藏文件
- Android 读取assets文件中的文件
- Android读取Resources和Assets中的文件
- 读取Resources和Assets中的文件
- 读取Resources和Assets中的文件
- Android---读取assets文件夹中的文件
- Android 读取assets中的Json文件
- 如何读取assets文件夹中的txt文件
- 如何读取assets文件夹中的txt文件
- svn服务器搭建和使用
- 64位系统vs2013配置opencv3.0
- 【玩转GridView】之Gridview对应行数值自动汇总
- iOS学习——FMDB详解
- Caffe学习记录:Cifar-10 自定义网络训练记录
- 安卓读取assets中的xml文件
- HDOJ 1157 Who's in the Middle
- CC学习笔记3:FIA类:标识和鉴别
- Tomcat重启负载高问题定位
- highcharts设置Y轴范围
- 关于我的第一篇博客
- openssl 非对称加密DSA,RSA区别与使用介绍
- 科协招新题目C:金字塔上的蜗牛
- Python学习之路二---(基础知识)