在android中的assets文件夹中打开一个文件

Min*_*amy 16 android android-assets

我在assets文件夹中有一个.gif文件,比如assets/Files/android.gif.当我尝试打开文件时,它会在第二行抛出异常

AssetManager mngr=getAssets();
InputStream is2=mngr.open("Files/android.gif");
Run Code Online (Sandbox Code Playgroud)

所以,如果我尝试打开文本文件,尽管相同的代码有效,我是否正在尝试打开图像文件?这可能是什么问题.

Tof*_*mad 31

这些线条完美运作 -

InputStream assetInStream=null;

try {
    assetInStream=getAssets().open("icon.png");
    Bitmap bit=BitmapFactory.decodeStream(assetInStream);
    img.setImageBitmap(bit);
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if(assetInStream!=null)
    assetInStream.close();
}
Run Code Online (Sandbox Code Playgroud)

如果您的图像非常大,那么您应该在将图像解码为Bitmap之前缩放图像.请参见如何有效地显示大图像

  • AFIK流应在使用后关闭 (3认同)