一、建立Assest檔案夾
直接把資源複制粘貼到該檔案夾下
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TP310MZRUT5NGROBDOsJGcohVYsR2MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL3IzNwMDO1MTMzIDNwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
(1)擷取Assets檔案夾的管理類
(2)周遊檔案夾下的資源清單
(3)通路Assets的絕對路徑
二、擷取Assets檔案夾的文本
AssetManager am = getAssets();
try{
//"penlaoxi.txt" 資源文本名稱以及字尾
InputStream open = am.open("penlaoxi.txt");
byte b[] = new byte[1024];
int len = 0;
StringBuffer sb = new StringBuffer();
//字元串為-1 表示為空
while((len = open.read(b)) != -1){
sb.append(new String(b,0,len));
}
//輸出文本資訊 sb.toString()
Log.d("TAG",sb.toString());
}catch(IOException e){
e.printStackTrace();
}
三、擷取Assets檔案夾下的網頁
String url = getAssets() + "/xxxx.html";
String url = "file:///android_asset/xxxx.html";
四、擷取Assets檔案夾下的圖檔
AssetManager am = getAssets();
InputStream inputStream = null;
try{
//"penglaoxi.jpg" 圖檔資源名稱
inputStream = am.open("penglaoxi.jpg");
}catch(IOException e){
e.printStackTrace();
}
//bitmap 就是一張圖檔 将inputstream 轉換成一張圖檔
Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
//設定圖檔為bitmap imageView:替換成你想要的控件顯示,或者以bitmap緩存到本地都行,結果在bitmap當中
imageView.setImageBitmap(bitmap );
五、擷取Assets檔案夾下的音頻
try{
//擷取MP3的資源檔案
AssetFileDescriptor mp = getAssets().openFd("penglaoxi.mp3");
//執行個體化播放器對象
MediaPlayer player = new MediaPlayer();
//設定資源
player.setDataSource(mp.getFileDescriptor(),mp.getStartOffset().mp.getLength());
//準備播放器
player.prepare();
//開始播放
player.start();
}catch(IOException e){
e.printStackTrace();
}
五、擷取Assets檔案夾下的字型資源
for (int i = 0; i < 7; i++) {
if (i == 0) {
//預設第一項加載預設字型
this.fonts.add(Typeface.DEFAULT);
} else {
// 其餘項加載儲存的字型包
// Typeface.createFromAsset(資源路徑,資源包名稱);
// String.format("fonts/font_%02d.TTF", Integer.valueOf(i))
// "fonts/font_%02d.TTF" 資源包名稱
// font_%02d 中的 " %02d " 替換 Integer.valueOf(i)
// Integer.valueOf(i) == 0 時, 表示 fonts/font_00.TTF
// Integer.valueOf(i) == 1 時, 表示 fonts/font_01.TTF
// Integer.valueOf(i) == 2 時, 表示 fonts/font_02.TTF
this.fonts.add(Typeface.createFromAsset(context.getAssets(), String.format("fonts/font_%02d.TTF", Integer.valueOf(i))));
}
}