既然是要对assets资源目录操作。首先来解释下assets是啥?
Android 中资源分为两种,
①、第一种是res下可编译的资源文件,这种资源文件系统会在R.java里面自动生成该资源文件的ID,(除了raw外,其他资源目录中的资源文件都会被编译),这也是为什么将APK文件解压后无法直接查看XML格式资源文件内容的原因。而assets与res/raw目录中的资源文件不会做任何处理,所以将APK解压后,这两个目录中的资源文件都会保持原样。res目录只能有一层子目录,而且这些子目录必须是预定义的,如res/layout、res/values等都是合法的,而res/abc,res/xyz并不是合法的资源目录。
②、第二种就是放在assets文件夹下面的原生资源文件,放在这个文件夹下面的文件不会被R文件编译,所以不能像第一种那样直接使用.Android提供了一个工具类,方便我们操作获取assets文件下的文件,在assets目录中可以建任意层次的子目录(只受操作系统的限制)。
接下来来点对assets实际的操作:
一、读取assets下的txt文件内容。
二、复制assets下文件夹中的文件到手机的其它(新建或者已有文件夹)路径中。
下面秀操作了(开始装逼-哈哈):
一、读取assets下的txt文件内容:(写成工具类,这样调用起来就方便了)
//读取本地JSON字符
public static String ReadDayDayString(Context context) {
InputStream is = null;
String msg = null;
try {
is = context.getResources().getAssets().open("mprespons.txt");
byte[] bytes = new byte[is.available()];
is.read(bytes);
msg = new String(bytes);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
is.close();
}