android中解析text配置文件
来源:互联网 发布:宁波淘宝美工培训 编辑:程序博客网 时间:2024/05/18 17:57
Android中文件解析有xml解析,json解析等。这里要说的是解析txt配置文件,返回JavaBean对象。
有一点是,配置文件每一行有一条数据,有些数据可能并不是我们所需要的,每组数据里面包含的元素不一定相同,而且取出来的数据也得符合要求。
先看JavaBean:
public class UpgradeInfo {public String productID;public String version;public String loadUrl;public String vendor;public UpgradeInfo(){productID = "";version = "";loadUrl = "";vendor = "";}}
解析txt,代码中有注释:
public UpgradeInfo parseTXTorPHP(InputStream inputStream) {DataInputStream dataInputStream = new DataInputStream(inputStream);String strLine = null;UpgradeInfo upgradeInfo = null;UpgradeInfo upgradeInfo_vendor = null;boolean hasVendorUpgradeInfo = false;int tag = 0;try {while (true) {strLine = dataInputStream.readLine();//一次读取一条数据if (strLine == null) {break;}if (strLine.startsWith("[")) {if (tag != 0) {mSb.append("{"); //每组数据以“[”开始。}tag = 1; //根据tag标签判断是否是第一组数据}mSb.append(strLine + ";"); //将所有字符串拼接}String[] arrys = mSb.toString().split("\\{"); //将字符串分组,得到每一组数据。for (String string : arrys) {if (!string.startsWith("[PRODUCTID]")) {Log.i(TAG, "current msg not start A312");continue; //如果不满足条件则不创建bean对象,并进行下一组数据判断。}String[] aaStrings = string.split(";"); //将符合条件的组切割成每条数据String productIDString = placeS(aaStrings[0]);if (aaStrings.length == 3 && upgradeInfo == null) {upgradeInfo = new UpgradeInfo(); //满足条件时创建bean对象,添加数据upgradeInfo.productID = productIDString;upgradeInfo.version = aaStrings[1];upgradeInfo.loadUrl = aaStrings[2];} else if (aaStrings[3].equals("VENDOR") && aaStrings.length == 4 && upgradeInfo_vendor == null) {
//判断是否为null,文件中满足条件的数据有多条,只取第一条。
upgradeInfo_vendor = new UpgradeInfo();upgradeInfo_vendor.productID = productIDString;upgradeInfo_vendor.version = aaStrings[1];upgradeInfo_vendor.loadUrl = aaStrings[2];upgradeInfo_vendor.vendor = aaStrings[3];hasVendorUpgradeInfo = true; //此处做标记,为了返回更合适的数据。}else {Log.i(TAG, "Please check your configFile!");}}if (hasVendorUpgradeInfo) { //返回符合条件的数据return upgradeInfo_vendor;} else {return upgradeInfo;} } catch (IOException e) {e.printStackTrace();}return null;}
0 0
- android中解析text配置文件
- android 配置文件解析
- android 配置文件解析
- android解析配置文件
- Android 配置文件 AndroidManifest 解析
- WCF中配置文件解析
- WCF中配置文件解析
- WCF中配置文件解析
- WCF中配置文件解析
- WCF中配置文件解析
- 解析Oracle数据库中配置文件
- Android ApiDemos示例解析(92):Text->Linkify
- Android ApiDemos示例解析(93):Text->LogTextBox
- Android ApiDemos示例解析(94):Text->Marquee
- android 配置文件解析各个文件的内涵
- Android init进程——解析配置文件
- Spring中BeanFactory配置文件的元素解析
- 解析Oracle数据库中配置文件(转载)
- Java登录界面的实现(注册、登录、背景图片)
- C#字符串压缩和解压
- 【kaggle】Celebrity Death
- SpringMVC-数据绑定流程分析
- 安卓Android布局中宽高、权重及其他属性的使用方法
- android中解析text配置文件
- for循环里,先执行完block代码再执行下一次循环
- netstat -an,提示:不是内部或外部命令,也不是可运行的程序或批处理文件。
- 【LeetCode014-015算法/编程练习C++】最长共同前缀,3Sum(和为0) //用到了map的自动排序
- Android 如何代码修改SeekBar进度颜色,不用xml
- 40. springboot + devtools(热部署)【从零开始学Spring Boot】
- 对象的"可枚举"到底有啥用?
- LeetCode解题报告 55. Jump Game [medium]
- 2016年,失望,开心,耐心,学习,梦想,领悟,惋惜,展望