在android程序中使用配置文件properties
2016-01-08 16:19
197 查看
android程序中使用配置文件来管理一些程序的配置信息其实非常简单
在这里我们主要就是用到Properties这个类
直接给函数给大家 这个都挺好理解的
复制代码
这两个函数与Android一点关系都没有嘛。。
所以它们一样可以在其他标准的java程序中被使用
在Android中,比起用纯字符串读写并自行解析,或是用xml来保存配置,
Properties显得更简单和直观,因为自行解析需要大量代码,而xml的操作又远不及Properties方便
贴一段测试的代码
复制代码
也可以用Context的openFileInput和openFileOutput方法来读写文件
此时文件将被保存在 /data/data/package_name/files下,并交由系统统一管理
用此方法读写文件时,不能为文件指定具体路径
在这里我们主要就是用到Properties这个类
直接给函数给大家 这个都挺好理解的
读写函数分别如下: //读取配置文件 public Properties loadConfig(Context context, String file) { Properties properties = new Properties(); try { FileInputStream s = new FileInputStream(file); properties.load(s); } catch (Exception e) { e.printStackTrace(); return null; } return properties; } //保存配置文件 public boolean saveConfig(Context context, String file, Properties properties) { try { File fil=new File(file); if(!fil.exists()) fil.createNewFile(); FileOutputStream s = new FileOutputStream(fil); properties.store(s, ""); } catch (Exception e) { e.printStackTrace(); return false; } return true; }
复制代码
这两个函数与Android一点关系都没有嘛。。
所以它们一样可以在其他标准的java程序中被使用
在Android中,比起用纯字符串读写并自行解析,或是用xml来保存配置,
Properties显得更简单和直观,因为自行解析需要大量代码,而xml的操作又远不及Properties方便
贴一段测试的代码
private Properties prop; public void TestProp(){ boolean b=false; String s=""; int i=0; prop=loadConfig(context,"/mnt/sdcard/config.properties"); if(prop==null){ //配置文件不存在的时候创建配置文件 初始化配置信息 prop=new Properties(); prop.put("bool", "yes"); prop.put("string", "aaaaaaaaaaaaaaaa"); prop.put("int", "110");//也可以添加基本类型数据 get时就需要强制转换成封装类型 saveConfig(context,"/mnt/sdcard/config.properties",prop); } prop.put("bool", "no");//put方法可以直接修改配置信息,不会重复添加 b=(((String)prop.get("bool")).equals("yes"))?true:false;//get出来的都是Object对象 如果是基本类型 需要用到封装类 s=(String)prop.get("string"); i=Integer.parseInt((String)prop.get("int")); saveConfig(context,"/mnt/sdcard/config.properties",prop); }
复制代码
也可以用Context的openFileInput和openFileOutput方法来读写文件
此时文件将被保存在 /data/data/package_name/files下,并交由系统统一管理
用此方法读写文件时,不能为文件指定具体路径
相关文章推荐
- Android实战开发:自定义照相机
- android 半边圆角
- Android Fragment详解(五):Fragment与Activity之间的通讯
- android内核模块动态加载
- 在Android中实现自定义checkbox样式
- Android实现TextView两端对齐的方法
- Android_通过Bugtags平台,方便测试人员提交bug及整个bug系统的管理
- Android开发--通过相册或拍照选择头像
- Android系统权限配置详解
- Fragment初学7——Fragment在Android开发中的应用1
- Android中<meta-data>的使用
- 找不到android-support-v4.jar、android-support-v7.jar怎么办?
- Android版的股票行情K线图开发
- Android结构及Framework启动流程
- 在Android Studio中使用NDK
- android studio中导入百度自动更新SDK
- android——打电话(直接拨号or跳转到打电话界面)
- Crazy Android Note Chapter-13
- Android Fragment详解(四):管理Fragment
- Android高手进阶:Adapter深入理解与优化