在android studio中如何读取asserts中图片、文件

写一点自己在写代码中遇到的一点点小问题,有可能很简单,新手上路,我很菜,但是我很努力。

我们老大要我们在项目中加配置文件,还必须是放在asserts目录下。由于我们这个项目是在android studio工具开发的,毕竟刚上手啊,拿着百度上的搜来的资料,在Eclipse下的getResources().getAssets().open("文件名.后缀");结果发现报异常,原来是因为Android Studio和Eclipse中的目录不一样了,所以不能再用Eclipse下的方法读取了。最主要的是android studio和Eclipse资源文件的位置是不一样的,所以导致读取方式的改变,下面看一下如何读取:

我要访问的就是上面这个json文件



其中最重要的就是这句代码

//获取Assets目录下的文件

MyApplication.getContextObject().getClass().getClassLoader().getResourceAsStream("assets/"+fileName);

MyApplication.getContextObject()是我自己参考别人的,因为我希望不管在什么类中都可以直接调用全局的context,
可以直接访问这个网址http://blog.csdn.net/yyywyr/article/details/39248937
因为我访问的是一个json文件,所以直接转换成的String类型读取了,大家也可以直接输出字节流,我这是很笨的方法。json文件里面就是一些键值对。剩下的就是解析json了。事情就这样解决了。
但是后来我发现了一个问题,我原来用android studio 2.0.0版本的,发现不能用getResources().getAssets().open(“文件名.后缀”);运行就会报异常读不到文件,当我把版本升级到2.1.1后发现getResources().getAssets().open(“文件名.后缀”)这个方法也可以实现对asserts目录下的图片的访问。不清楚为什么?如果谁知道的话请指教小弟,感激不尽!
 
  

你可能感兴趣的:(记录)