将BitmapFactory存储在我的文件夹中,以后可以根据名称检索它

时间:2013-12-23 23:18:11

标签: java android image imageview

我目前的代码:

URL url = new URL("URL_I_USE_TO_RETRIEVE_A_PHOTO");
Bitmap bmp = BitmapFactory.decodeStream(url.openConnection().getInputStream());

我在imageview中显示这个位图,它完美无缺。但是,要存储一些带宽,我想在本地存储照片(如果存在这样的名称)。我如何存储它,然后检查这些照片是否存在?我在这里检查了一些答案,但是他们之后没有处理检索图片。

1 个答案:

答案 0 :(得分:2)

您可以使用URL中的inputStream并存储到FileOutputStream中。稍后您可以使用FileInputStream再次解码位图。

示例:

InputStream in= url.openConnection().getInputStream();
OutputStream out=new FileOutputStream(...);
IOUtils.copy(in,out);
in=new FileInputStream(...);
Bitmap bitmap=BitmapFactory.decodeStream(in);

无论如何,有一些库可以为您完成,包括缓存和许多其他功能。如果图像可能相当大(或者具有未指定的大小),您还应该考虑下采样。<​​/ p>