原文地址:http://blog.csdn.net/shifuhetudi/article/details/45006605java
一開始在Android Studio中讀取Assets目錄下的資源的時候,用的是Eclipse下的getResource().getAssets().open("xxx.xml");這裏假如是讀取一個xml文件,可是這個方法在Android Studio中是會報異常的,爲什麼呢?由於Android Studio和Eclipse中的目錄不同了,因此不能再用Eclipse下的方法讀取了,下面是Android Studio中的方法,以個人一個例子來說android
1.首先是assets目錄的位置問題,在Eclispe中,這個目錄的位置在res/下面,但到了Android Studio中,這個assets目錄必須放在跟Java和res同級目錄下,下面是截圖ui
我這裏是放入了8張圖片,好了,我如今想把那些圖片寫到SD卡,就會涉及到怎樣讀取assets目錄下的文件了,其實很簡單,首先是聲明那些圖片,下面是代碼:.net
private String[] names={"songhuiqiao.jpg","zhangzetian.jpg","songqian.jpg","hangxiaozhu.jpg","jingtian.jpg"
,"liuyifei.jpg","kangyikun.jpg","dengziqi.jpg"};
xml
聲明完以後,就能夠讀取了,是用下面的代碼完成的blog
//獲取Assets目錄下的文件
is=context.getClass().getClassLoader().getResourceAsStream("assets/"+names[i]);
圖片
下面是個人這邊的截圖:ip
能夠看到用了跟Eclipse中不一樣的方法就能夠讀取assets目錄下的文件了,下面是打印圖片的流的截圖:資源
從打印能夠看出,打印出了8張圖片的流的信息,由此看出讀取assets目錄下的圖片成功了,接下來就看具體的須要了,這裏就再也不繼續了get
總結:Android Studio讀取Assets目錄下的問題,就是2個問題而已
1.是assets目錄的位置問題
2.是讀取方法的問題,要用context.getClass().getClassLoader().getResourceAsStream("assets/"+資源名);