将图像保存并加载到localstorage

时间:2013-12-27 23:31:16

标签: android

我尝试将缓存建议保存到本地存储中。

保存部分完成如下:

Bitmap bmp = ImagesHelper.loadBitmap(url, 3);  //here the image is downloaded from web
String fname = item.getItemID() + ".png";  //item is my object
if(fname != null){
    try {
        FileOutputStream fos = context.openFileOutput(fname, Context.MODE_PRIVATE);
        bmp.compress(Bitmap.CompressFormat.PNG, 90, fos);
        fos.close();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

此方法有效,不会抛出任何异常。 现在不工作的部分是卡明,来自本地存储的加载图像:

String fname = item.getItemID() + ".png";  //item is my object
if(file.exists()){
    try {
        Bitmap cacheImg = BitmapFactory.decodeFile(file.getAbsolutePath());
        return cacheImg;
    }
    catch(Exception ex){
        Log.e(Constants.TAG, "Error loading cache image", ex);
    }
}

此代码始终异常 - 文件存在,但无法加载图像。

错误在哪里?这是将文件保存/加载到本地存储的正确方法吗?

0 个答案:

没有答案