android:使用Properties保存程序配置

Java.util.Properties

Properties 类是 Java操作配置文件类,主要用于读取Java的配置文件。
其实各种语言都有自己所支持的配置文件。
配置文件是为了方便程序员修改应用里可能经常变化的变量
比如为小明写的APP,保存了小明的许多特征,后来要转给小红,如果全局多处使用了小明的这些特性就要一处处去修改,如果程序中使用这类的配置文件,我们就可以减少工作量。
甚至,我们可以动态的使用它,给了特殊的用户,他们自己编写配置文件,那么他们即使不是程序员也能轻松的改变APP的表现。
在Java中,其配置文件常为 .properties文件 ,格式为TXT文本文件,文件的内容的格式是 “ 键=值 ” 的格式,文本注释信息s使用 “#” 来注释。

像这样:

#用户信息
userName=小明
userNum=12345
userSex=man
userHeight=178cm

读取

我们可以把 .propertise文件放在Assets或者raw下。
两者目录下的文件在打包后会原封不动的保存在apk包中,不会被编译成二进制。
两者的区别就是前者可以创建多级目录,但是必须使用Context.getAssets()获取AssetManager来操作,相反的raw可以使用R文件映射访问,但目录下不能有子目录。
其实你可以把**.propertise**文件放在任意位置,只要能通过Stream读取进Propertise对象里面就可以了。
像这样:

Properties properties=new Properties();
properties.load( getAssets ().open ( "property.properties" ) );
properties.load( getResources().openRawResource(R.raw.properties) );
properties.load( new FileInputStream (filepath) );
String userName=properties.getProperty ( "userName" );
String userSex=properties.getProperty ( "userSex" );

另有一Api 如果没有数据返回默认值

public String getProperty(String key, String defaultValue)

这样我们就读取到了配置文件保存的 Key - Value 键值对了。
#写入
当然,我们也可以动态的写入数据。
像这样:

properties.put("userHeight", "181cm");
//setProperty 也是调用Hashtable的put方法
properties.setProperty("userNum", "65432");
OutputStream fos;
try {
	fos = new FileOutputStream (Constants.PATH+"/property.properties");
	properties.store(fos, null);
	} catch ( IOException e ) {
	e.printStackTrace ( );
}
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值