通过流文件来进行properties文件读取的,要将文件放入到assets文件夹或者raw文件夹中.例如,我们这里有一个文件test.properties,如果放入了assets文件夹中,可以如下打开:
Java代码
Properties pro = new Properties();
InputStream is = context.getAssets().open("test.properties");
pro.load(is);
Properties pro = new Properties();
InputStream is = context.getAssets().open("test.properties");
pro.load(is);
如果放入到raw文件夹中,可以通过如下方式打开:
Java代码
InputStream is = context.getResources().openRawResource(R.raw.test);
InputStream is = context.getResources().openRawResource(R.raw.test);
Java代码
Properties pro = new Properties();
pro.load(FileLoad.class.getResourceAsStream("/assets/test.properties"));
Properties pro = new Properties();
pro.load(FileLoad.class.getResourceAsStream("/assets/test.properties"));
在android中,当我们打包生成apk后,将apk放入到真正的手机上时,你会找不到test.properties文件,不要惊讶,android中的资源文件是只能存放在assets或者res的子目录里面的,程序包中的资源文件编译后,是会丢失的!那么是不是我们的第二种方法就没法使用了?当然不是,经过实验发现,将文件放入到assets文件夹里,而在传入路径里面填入文件绝对路径,还是可以引用该文件的.