A011-Raw资源
2015-09-12 本文已影响36人
IT_xiao小巫
前面的笔者介绍过了assets资源,这节课介绍的是在res目录下的raw资源,路径为res/raw。处理assets资源外,我们程序中涉及到的资源文件都在res目录下,比如前面介绍过的drawable资源、menu资源,后面会陆续介绍其他资源类型。
我们要如何获取raw下的资源,它跟assets目录的资源有什么异同,这个是我们Android开发者需要去关注的。
共同点
两者都不会被编译成二进制文件,也就是说它们是会原封不动打包到apk文件中的
不同点
- assets不会被映射到R文件中,而raw资源会映射到R文件。
- raw资源可以通过R.raw.filename来进行引用
- assets可以有目录结构,raw不可以有目录结构
eg:读取res/raw下的txt文件
public void readRaw() {
InputStream inputStream = getResources().openRawResource(R.raw.demo);
textView.setText(read(inputStream));
}
private String read(InputStream inputStream) {
try {
ByteArrayOutputStream osStream = new ByteArrayOutputStream();
int length;
while ((length = inputStream.read()) != -1) {
osStream.write(length);
}
return osStream.toString();
} catch (IOException e) {
return "文件读写失败";
}
}
引用:http://www.cnblogs.com/leizhenzi/archive/2011/10/18/2216428.html