1.asset与res/raw的区别?
res/raw 和 assets 的相同点:
两者目录下的文件在打包后会原封不动的保存在 apk 包中,不会被编译成二进制。
res/raw 和 assets 的不同点:
1)res/raw 中的文件会被映射到 R.java 文件中,访问的时候直接使用资源 ID 即
R.raw.filename;assets 文件夹下的文件不会被映射到 R.java 中,访问的时候需要 AssetManager 类。
2)res/raw 不可以有目录结构,而 assets 则可以有目录结构,也就是 assets 目录下 ,可以 再建立文件夹
3)读取文件资源举例: 读取 res/raw 下的文件资源,通过以下方式获取输入流来进行写操作
InputStream is = getResources().openRawResource(R.raw.filename);
读取 assets 下的文件资源,通过以下方式获取输入流来进行写操作
AssetManager am = null;
am = getAssets();
InputStream is = am.open("filename");