android xml 解析

创建xml 文件

<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" />
            <district name="宜秀区" zipcode="246000" />
            <district name="迎江区" zipcode="246000" />
            <district name="岳西县" zipcode="246000" />
            <district name="其他" zipcode="246000" />
        </city>
        <city name="蚌埠市">
            <district name="蚌山区" zipcode="233000" />
            <district name="固镇县" zipcode="233000" />
            <district name="怀远县" zipcode="233000" />
            <district name="淮上区" zipcode="233000" />
            <district name="龙子湖区" zipcode="233000" />
            <district name="五河县" zipcode="233000" />
            <district name="禹会区" zipcode="233000" />
            <district name="其他" zipcode="233000" />
        </city>
        <city name="亳州市">
            <district name="利辛县" zipcode="236000" />
            <district name="蒙城县" zipcode="236000" />
            <district name="谯城区" zipcode="236000" />
            <district name="涡阳县" zipcode="236000" />
            <district name="其他" zipcode="236000" />
        </city>
        <city name="巢湖市">
            <district name="含山县" zipcode="238000" />
            <district name="和县" zipcode="238000" />
            <district name="居巢区" zipcode="238000" />
            <district name="庐江县" zipcode="238000" />
            <district name="无为县" zipcode="238000" />
            <district name="其他" zipcode="238000" />
        </city>
        <city name="池州市">
            <district name="东至县" zipcode="247100" />
            <district name="贵池区" zipcode="247100" />
            <district name="青阳县" zipcode="247100" />
            <district name="石台县" zipcode="247100" />
            <district name="其他" zipcode="247100" />
        </city>
        <city name="滁州市">
            <district name="定远县" zipcode="239000" />
            <district name="凤阳县" zipcode="239000" />
            <district name="来安县" zipcode="239000" />
            <district name="琅琊区" zipcode="239000" />
            <district name="明光市" zipcode="239000" />
            <district name="南谯区" zipcode="239000" />
            <district name="全椒县" zipcode="239000" />
            <district name="天长市" zipcode="239000" />
            <district name="其他" zipcode="239000" />
        </city>
        <city name="阜阳市">
            <district name="阜南县" zipcode="236100" />
            <district name="界首市" zipcode="236100" />
            <district name="临泉县" zipcode="236100" />
            <district name="太和县" zipcode="236100" />
            <district name="颍东区" zipcode="236100" />
            <district name="颍泉区" zipcode="236100" />
            <district name="颍上县" zipcode="236100" />
            <district name="颍州区" zipcode="236100" />
            <district name="其他" zipcode="236100" />
        </city>
        <city name="合肥市">
            <district name="包河区" zipcode="230000" />
            <district name="长丰县" zipcode="230000" />
            <district name="肥东县" zipcode="230000" />
            <district name="肥西县" zipcode="230000" />
            <district name="庐阳区" zipcode="230000" />
            <district name="蜀山区" zipcode="230000" />
            <district name="瑶海区" zipcode="230000" />
            <district name="其他" zipcode="230000" />
        </city>
        <city name="淮北市">
            <district name="杜集区" zipcode="235000" />
            <district name="烈山区" zipcode="235000" />
            <district name="濉溪县" zipcode="235000" />
            <district name="相山区" zipcode="235000" />
            <district name="其他" zipcode="235000" />
        </city>
    

    </province>
</root>
xml 配置到 assetsxia

创建model 保持数据

public class ProvinceModel {private String name;
   private List<CityModel> cityList;
   
   public ProvinceModel() {super();
   }public ProvinceModel(String name, List<CityModel> cityList) {super();
      this.name = name;
      this.cityList = cityList;
   }public String getName() {return name;
   }public void setName(String name) {this.name = name;
   }public List<CityModel> getCityList() {return cityList;
   }public void setCityList(List<CityModel> cityList) {this.cityList = cityList;
   }@Override
   public String toString() {return "ProvinceModel [name=" + name + ", cityList=" + cityList + "]";
   }}
public class CityModel {private String name;
   private List<DistrictModel> districtList;
   
   public CityModel() {super();
   }public CityModel(String name, List<DistrictModel> districtList) {super();
      this.name = name;
      this.districtList = districtList;
   }public String getName() {return name;
   }public void setName(String name) {this.name = name;
   }public List<DistrictModel> getDistrictList() {return districtList;
   }public void setDistrictList(List<DistrictModel> districtList) {this.districtList = districtList;
   }@Override
   public String toString() {return "CityModel [name=" + name + ", districtList=" + districtList
            + "]";
   }}

public class DistrictModel {private String name;
   private String zipcode;
   
   public DistrictModel() {super();
   }public DistrictModel(String name, String zipcode) {super();
      this.name = name;
      this.zipcode = zipcode;
   }public String getName() {return name;
   }public void setName(String name) {this.name = name;
   }public String getZipcode() {return zipcode;
   }public void setZipcode(String zipcode) {this.zipcode = zipcode;
   }@Override
   public String toString() {return "DistrictModel [name=" + name + ", zipcode=" + zipcode + "]";
   }}

解析xml文件

//解析区域XMl文件
private void initProvinceDatas() {List<ProvinceModel> provinceList;
    AssetManager asset = context.getAssets();
    try {InputStream input = asset.open("area_data.xml");
        // 创建一个解析xml的工厂对象
        SAXParserFactory spf = SAXParserFactory.newInstance();
        // 解析xml
        SAXParser parser = spf.newSAXParser();
        XmlParserHandler handler = new XmlParserHandler();
        parser.parse(input, handler);
        input.close();
        // 获取解析出来的数据
        provinceList = handler.getDataList();
} catch (Throwable e) {e.printStackTrace();
}

}


demo 下载地址  http://pan.baidu.com/s/1gf9psRL

eclipse 下载地址 http://pan.baidu.com/s/1clJePK

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/415948.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

js触发点击事件

最简单的触发单击事件肯定是elem.click()&#xff0c;平时在不需要考虑兼容性的场合我都是这么干的&#xff0c;但是毕竟这个方法有兼容性&#xff08;具体兼容性如何没做过测试&#xff09;&#xff0c;所以还是要掌握一个通用的方法。 以下代码是网上比较容易找到的一段代码&…

MacOS 升级后出现 xcrun: error: invalid active developer path, missing xcrun

升级macOS mojove&#xff0c;终端里使用git的时候&#xff0c;弹出一行莫名其妙的错误&#xff1a; xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun解决方法&am…

windows系统下oracle数据库rman备份记录(实战篇)

在windows 2003系统中装了oracle10G数据库&#xff0c;同时建了多个实例&#xff0c;这个备份应该怎么做呢&#xff1f; 在网上查了N多的资料&#xff0c;终于了解了一些&#xff1a; 冷备&#xff1a;把数据库已执行关闭后&#xff0c;对数据库做全备&#xff1b;需要停机&…

mac mongodb 安装

1、进入目录 cd /usr/local2、下载对应版本 sudo curl -O https://fastdl.mongodb.org/osx/mongodb-osx-ssl-x86_64-4.0.3.tgz3、解压到当前目录 sudo tar -zxvf mongodb-osx-x86_64-3.4.2.tgz4、重命名为mongodb&#xff0c;主要是方便管理 sudo mv mongodb-osx-x86_64-4.…

format 参数说明

oracle 数据库中&#xff0c;可以用format参数是指定备份集的文件名格式 使用FORMAT参数时可使用的各种替换变量&#xff0c;如下&#xff1a; %c&#xff1a;备份片的拷贝数(从1开始编号)&#xff1b; %d&#xff1a;数据库名称&#xff1b; %D&#xff1a;位于该月中的天数 (…

【自动化__持续集成】___java___XML__DOM4操作

一、代码如下 package com.wujianbo.five;import java.io.File; import java.io.FileOutputStream; import java.util.List;import javax.annotation.Generated; import javax.swing.text.html.HTMLDocument.Iterator;import org.dom4j.Document; import org.dom4j.DocumentHel…

android 获取系统时间的时间戳 ,时间戳日期互转,计算日期时间差,获取明天日期,比较时间大小

long creatTimemBindCheck.remainPaymentTime; int shi (int)mBindCheck.remainPaymentTime/(3600*1000); int yu1 (int)mBindCheck.remainPaymentTime%(3600*1000); int fen (int)yu1/(60*1000); int yu2 (int)yu1%(60*1000); int mia (int)yu2/1000; 获取系统时间戳 pub…

mac 下载的破解软件显示 文件已损坏

其实&#xff0c;这是mac系统加强了安全机制&#xff0c;默认不允许用户自行下载安装应用程序&#xff0c;只能从Mac App Store里安装应用。 1、执行下面命令 sudo spctl --master-disable2、打开系统偏好设置 安全性与隐私&#xff0c;若显示任何来源&#xff0c;大功告成

rman全备时,配置项如何设置?

rman 全备设置哪些配置呢&#xff1f;如果是小库的话 下面这些就差不多了。。 CONFIGURE CONTROLFILE AUTOBACKUP ON; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE SBT_TAPE TO %F; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO %F; # defa…

【VBA】多条件去重

Function kaidan(txt)Dim i As IntegerDim arrSet d CreateObject("scripting.dictionary")For i 1 To Worksheets("汇-销").Range("a65536").End(xlUp).Rowarr Worksheets("汇-销").Range("a1:s" & i).Value If arr…

工作108:vue里面wangEdit编辑器使用

WangEdit使用 <template lang"html"><div class"editor"><!--定义的为表头的属性--><div ref"toolbar" class"toolbar"></div><!--定义的为表格的属性--><div ref"editor" class&…

android 查看图片、保存图片

配置photoview-library-1.2.2.jar 到libs photoview-library-1.2.2.jar 下载地址 http://pan.baidu.com/s/1nviEKtj MainActivity import java.io.BufferedOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.i…

Mac 生成SSH Key

苹果系统一个大更新&#xff0c;更新完&#xff0c;很多东西不能用了&#xff0c;&#xff0c;&#xff0c;重新配置一下。 1、查看秘钥是否存在&#xff0c;打开终端查看是否已经存在SSH密钥 cd ~/.ssh如果没有密钥则不会有此文件夹&#xff0c;有则备份删除, 也可以直接删除…

rman 备份后恢复整个数据库文件的操作

回复(Restoring)即是从恢复操作中选择需要的备份。 恢复(Recovery)是将日志和增量备份的改变应用到数据文件&#xff0c;使得数据文件恢复到希望的SCN号或者是指定时间点上。恢复整个数据库操作 使用RESTORE DATABASE和RECOVER DATABASE命令恢复整个数据库 RMAN> STARTUP FO…

工作109:路由菜单项

/*各个路由模块的建立*/ import Home from "/views/Home/Home"; import GlobalLayout from "/layout/GlobalLayout"; import Login from "/views/login/Login";const SYSTEM_MANAGEMENT "系统管理"; const SETTLEMENT_MANAGEMENT &q…

android TextView下划线,圆角边框,数逐字显示,虚线边框, 渐变色背景框, 阴影背景框

长方形 <?xml version"1.0" encoding"utf-8"?> <shape xmlns:android"http://schemas.android.com/apk/res/android"android:shape"rectangle"><size android:width"10dp" android:height"5dp"…

vscode 遇到的迷之bug nvm is not compatible with the npm config prefix

mac升级系统后&#xff0c;发现每次打开vscode&#xff0c;在命令栏TERMINAL中都会出现不识别npm&#xff0c;把vscode重新安装后&#xff0c;还是不行。 最后&#xff0c;在万能的git上找到了解决方法&#xff0c;之前出错的原因使因为我曾经使用brew install node安装过nod…