android獲取assets文件
㈠ 如何獲取android assets文件下的mp4
assets文件夾是android程序中存放相關外部文件的一個目錄,Android官方提供了相應的方法去訪問該文件夾中的內容,故此我們並不需要進行相關的路徑判斷等代碼操作,直接調用相關方法打開文件並得到一個位元組輸入流(InputStream);
然後通過相應的字元編碼方式讀取位元組解碼為字元輸入流(InputStreamReader);再通過BufferReader對字元輸入流讀取文本並將字元存入緩沖區以便能提供字元、數組和線段的高效讀取;最後我們就能逐行對文件內容進行讀取了;
public class MainActivity extends Activity {
㈡ android如何獲取assets文件夾下面文件的大小
InputStream in = getResources().getAssets().open(fileName);
//獲取文件的位元組數
int lenght = in.available();
㈢ android 怎麼獲取assets文件轉換成二進制數據
AssetManager assetManager = getAssets();
String[] files = assetManager.list("image"); //表示獲取assets/image目錄下的所有文件
㈣ android 怎麼讀取assets文件
getResources().getAssets().open(fileName)
上面紅色的都是讀取的函數
㈤ 開發Android項目,寫單元測試類時,怎樣讀取assets中的文件
InputStream inStream = context.getAssets().open(fileName);這個context指service或者activity對象,如果是在service或者activity中,就直接調getAssets()就好了. fileName是相對路徑,如果你的文件就是放在assets目錄下,就直接寫文件名比如text.txt就行了,如果是在assets的子目錄下,就需要將子目錄的路徑也加上.
㈥ android 怎樣讀取assets文件下word文件
AndroidStudio中放置assets文件夾需要手動創建,我以存放一張圖片為例說明。新建一個項目,切換到當前的Mole,在main文件夾下新建一個名為「assets」文件夾如下圖:復制資源(這里以圖片為例),粘貼到「assets」文件夾下,如下圖:在AndroidStudio里以輸入流的方式讀取資源,部分代碼如下://從assets中讀取圖片,其它資源讀取方式類似AssetManager am = res.getAssets();try { is = am.open("pic_assets.png");} catch (IOException e) { e.printStackTrace();}Bitmap bmp = BitmapFactory.decodeStream(is);
㈦ Android 本地播放音頻
1.首先在main文件夾下面建立assets文件夾,添加資源
2.用getResources().getAssets()方法得到AssetManager對象
3.assetManager.list("") 得到assets文件夾下所有文件名。如果assets文件夾里有文件夾叫xml,得到文件名的方法為assetManager.list("xml"),路徑都是相對assets路徑的
4.如果在assets文件夾下的文件夾為空文件夾,獲取assets下文件名時會忽略空文件夾
5.最後,在要播放的地方,進行如下操作:
㈧ android讀取assets下的文件需要許可權嗎
AndroidStudio中放置assets文件夾需要手動創建,我以存放一張圖片為例說明。新建一個項目,切換到當前的Mole,在main文件夾下新建一個名為「assets」文件夾如下圖:復制資源(這里以圖片為例),粘貼到「assets」文件夾下,如下圖:在AndroidStudio里以
輸入流
的方式讀取資源,部分代碼如下://從assets中讀取圖片,其它資源讀取方式類似AssetManager
am
=
res.getAssets();try
{
is
=
am.open("pic_assets.png");}
catch
(IOException
e)
{
e.printStackTrace();}Bitmap
bmp
=
BitmapFactory.decodeStream(is);
㈨ Android如何獲取asset目錄下所有文件的路徑
package com.hangcheng.util;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import android.app.Activity;
import android.content.Context;
import android.content.res.AssetManager;
public class GetfilesFromAssets {
private Activity activity;
private String[] files;
public GetfilesFromAssets(Context context) {
this.activity = (Activity) context;
}
// public void deepFile(Context ctxDealFile, String path) {
// try {
// String str[] = ctxDealFile.getAssets().list(path);
// if (str.length > 0) {// 如果是目錄
// File file = new File("/data/" + path);
// file.mkdirs();
// for (String string : str) {
// path = path + "/" + string;
// System.out.println("zhoulc:\t" + path);
// // textView.setText(textView.getText()+"\t"+path+"\t");
// deepFile(ctxDealFile, path);
// path = path.substring(0, path.lastIndexOf('/'));
// }
// } else {// 如果是文件
// InputStream is = ctxDealFile.getAssets().open(path);
// FileOutputStream fos = new FileOutputStream(new File("/data/"
// + path));
// byte[] buffer = new byte[1024];
// int count = 0;
// while (true) {
// count++;
// int len = is.read(buffer);
// if (len == -1) {
// break;
// }
// fos.write(buffer, 0, len);
// }
// is.close();
// fos.close();
// }
// } catch (IOException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
// }
public String[] getfileFromAssets(String path) {
AssetManager assetManager = activity.getAssets();
// String[] files;
try {
files = assetManager.list(path);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return files;
}
public List listHtmlOfAssets() {
List list = new ArrayList();
files = getfileFromAssets("html");
for (int i = 0; i < files.length; i++) {
HashMap map = new HashMap();
map.put("htmlname", files[i]);
list.add(map);
}
return list;
}
}
㈩ Android assets文件夾
assets目錄下的文件在打包後會原封不動的保存在apk包中,不會被編譯成二進制,assets目錄下可以再建立文件夾,assets文件夾下的文件不會被映射到R.java中,訪問的時候需要AssetManager類