繁体   English   中英

将图像从数据库保存到SD卡

[英]Save images from database to sdcard

我想找到一种方法可以将sqlite数据库中的图像保存在sdcard中,如果我使用简单的查询可以找到图像数据,但是如何将它们保存在sdcard/temp ,例如我搜索了很多但找不到匹配的内容我想要的是

我假设您将从数据库中提取blob,并从中获取位图或其他任何内容。 您可能需要查看http://developer.android.com/reference/java/io/File.html 您可以使用“文件”中的方法为给定路径创建文件。

将位图编码为Blob的方式将影响重新序列化这些位图的方式。

从这篇文章中: Android:从数据库检索位图时出现问题


编码到数据库:

ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
mBitmap.compress(Bitmap.CompressFormat.JPEG, THUMB_QUALITY, outputStream);
mByteArray = outputStream.toByteArray();  // write this to database as blob

从数据库重新序列化:

ByteArrayInputStream inputStream = new ByteArrayInputStream(cursor.getBlob(columnIndex));
Bitmap mBitmap = BitmapFactory.decodeStream(inputStream);

保存到文件:

String path = Environment.getExternalStorageDirectory().toString();
File filename = new File(path, "myImg.png");
FileOutputStream out = new FileOutputStream(filename);
bitmapp.compress(Bitmap.CompressFormat.PNG, <<COMPRESSION_AMT>>, out);
out.flush();
out.close();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM