android properties有什么用
2个回答
推荐于2016-08-09 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:117538
获赞数:517196
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。
向TA提问 私信TA
关注
展开全部
java中经常用到properties文件,然后通过使用Properties类来解析,这里不再陈述使用properties文件的好处,主要探讨如何在android中使用properties文件!
方法一:因为最终是通过流文件来进行properties文件读取的,所以很自然,我们想到要将文件放入到assets文件夹或者raw文件夹中了。
例如,我们这里有一个文件——>test.properties,如果放入了assets文件夹中,可以如下打开
Properties pro = new Properties();
InputStream is = context.getAssets().open("test.properties");
pro.load(is);
如果放入到raw文件夹中,可以通过如下方式打开
InputStream is = context.getResources().openRawResource(R.raw.test);
但是,有的时候我们不想获取android的上下文环境(context),而是像java中标准的方法加载properties文件,那么我们如何使用呢?请看方法二:
方法二:没有上下文的加载![推荐方式]
Properties pro = new Properties();
pro.load(FileLoad.class.getResourceAsStream("test.properties"));
其中,FileLoad是该加载方法所在类的类名。test.properties所存放的路径与FileLoad.java为同一包中。
但是,在android中,当我们打包生成apk后,将apk放入到真正的手机上时,你会找不到test.properties文件,不要惊讶,android中的资源文件是只能存放在assets或者res的子目录里面的,程序包中的资源文件编译后,是会丢失的!那么是不是我们的第二种方法就没法使用了?当然不是,经过实验发现,将文件放入到assets文件夹里,而在传入路径里面填入文件绝对路径,还是可以引用该文件的。
代码:pro.load(FileLoad.class.getResourceAsStream("/assets/test.properties"));
注意:其中工程路径的根路径为"/"
如此一来,你就可以顺利使用你的Properties文件了!o(∩∩)o...哈哈
转载
方法一:因为最终是通过流文件来进行properties文件读取的,所以很自然,我们想到要将文件放入到assets文件夹或者raw文件夹中了。
例如,我们这里有一个文件——>test.properties,如果放入了assets文件夹中,可以如下打开
Properties pro = new Properties();
InputStream is = context.getAssets().open("test.properties");
pro.load(is);
如果放入到raw文件夹中,可以通过如下方式打开
InputStream is = context.getResources().openRawResource(R.raw.test);
但是,有的时候我们不想获取android的上下文环境(context),而是像java中标准的方法加载properties文件,那么我们如何使用呢?请看方法二:
方法二:没有上下文的加载![推荐方式]
Properties pro = new Properties();
pro.load(FileLoad.class.getResourceAsStream("test.properties"));
其中,FileLoad是该加载方法所在类的类名。test.properties所存放的路径与FileLoad.java为同一包中。
但是,在android中,当我们打包生成apk后,将apk放入到真正的手机上时,你会找不到test.properties文件,不要惊讶,android中的资源文件是只能存放在assets或者res的子目录里面的,程序包中的资源文件编译后,是会丢失的!那么是不是我们的第二种方法就没法使用了?当然不是,经过实验发现,将文件放入到assets文件夹里,而在传入路径里面填入文件绝对路径,还是可以引用该文件的。
代码:pro.load(FileLoad.class.getResourceAsStream("/assets/test.properties"));
注意:其中工程路径的根路径为"/"
如此一来,你就可以顺利使用你的Properties文件了!o(∩∩)o...哈哈
转载
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询