[英]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.