android assets文件夹资源的访问

时间:2023-03-08 17:52:25

1、assets文件夹里面的文件都是保持原始的文件格式 。

2、assets中的文件只可以读取而不能进行写的操作。

3、assets目录下的资源文件不会在R.java自动生成ID,所以读取assets目录下的文件必须指定文件的路径。

4、assets则可以有目录结构,也就是assets目录下可以再建立文件夹。

5、读取assets 目录下的文件

AssetManager assetManager = getAssets() ;
InputStream inputStream = assetManager.open( "fileName" ) ;
InputStream is = getResources().getAssets().open( "aa.txt" ) ;

6、读取assets 目录下的文本

  String s = getAssetsString( "aa.txt" ) ;

/**
* 读取本地文件中字符串
* @param fileName
* @return
*/
private String getAssetsString(String fileName) {
StringBuilder stringBuilder = new StringBuilder();
try {
BufferedReader bf = new BufferedReader(new InputStreamReader(
getAssets().open(fileName), "UTF-8") );
String line;
while ((line = bf.readLine()) != null) {
stringBuilder.append(line);
}
} catch (IOException e) {
e.printStackTrace();
}
return stringBuilder.toString();
}

7、读取assets 目录下的图片

Bitmap bgImg = getImageFromAssetFile( "background.png" );  

    /**
* 从assets中读取图片
*/
private Bitmap getImageFromAssetsFile(String fileName)
{
Bitmap image = null;
AssetManager am = getResources().getAssets();
try
{
InputStream is = am.open(fileName);
image = BitmapFactory.decodeStream(is);
is.close();
}
catch (IOException e)
{
e.printStackTrace();
}
return image;
}