2025-05-17

 

res/raw和assets的相同點:

 

1.兩者目錄下的文件在打包後會原封不動的保存在apk包中,不會被編譯成二進制。

 

*res/raw和assets的不同點:

1.res/raw中的文件會被映射到R.java文件中,訪問的時候直接使用資源ID即R.id.filename;assets文件夾下的文件不會被映射到R.java中,訪問的時候需要AssetManager類。

2.res/raw不可以有目錄結構,而assets則可以有目錄結構,也就是assets目錄下可以再建立文件夾

*讀取文件資源:

1.讀取res/raw下的文件資源,通過以下方式獲取輸入流來進行寫操作

InputStream is = getResources().openRawResource(R.id.filename); 

2.讀取assets下的文件資源,通過以下方式獲取輸入流來進行寫操作

AssetManager am = null; 

am = getAssets(); 

InputStream is = am.open("filename"); 

 

摘自junjieking的專欄

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *