这个方法帮助我显示从db到imgview的图像。 那么如何将它保存在SD卡上?
private Bitmap setImage(String base64String) {
Bitmap bmp = null;
try {
if (base64String == null || base64String.equals("")) {
} else {
byte[] decodedString = Base64.decode(base64String, Base64.DEFAULT);
bmp = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
}
} catch (Exception e) {
e.printStackTrace();
}
return bmp;
}
的Eclipse Android 2.2
答案 0 :(得分:5)
从你的方法返回位图,你可以将该位图存储到SD卡中。
在Android中我们可以以同伴的方式保存位图。然后你必须从SD卡到达目录(File对象),例如:
File deviceSdcardDirectory = Environment.getExternalStorageDirectory();
接下来,为图像存储创建特定文件:
File image = new File(deviceSdcardDirectory, "file_name.png");
之后,你只需编写位图:
// Encode the file as a PNG image.
FileOutputStream outStream;
try {
outStream = new FileOutputStream(image);
bitmap.compress(Bitmap.CompressFormat.PNG, 100, outStream);
/* 100 to keep full quality of the image */
outStream.flush();
outStream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
不要忘记在清单文件中添加以下权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>