【问题标题】:Save images from drawable to internal file storage in Android将图像从drawable保存到Android中的内部文件存储
【发布时间】:2012-09-24 06:36:28
【问题描述】:

我在可绘制文件夹中保存了大约 10 张图像。我想将它们移动到内部文件存储中。

这可能吗?

我搜索了很多,但我只找到了可以将图像从给定路径保存到内部文件系统的链接,但我想将图像从可绘制文件夹保存到 Android 中的内部文件存储和我想通过代码来实现。

任何帮助将不胜感激。

谢谢。

【问题讨论】:

标签: android drawable file-storage


【解决方案1】:

将图片从drawble资源保存到sdcard:

假设您的可绘制对象中有一个名为ic_launcher 的图像。然后从此图像中获取位图对象,例如:

Bitmap bm = BitmapFactory.decodeResource( getResources(), R.drawable.ic_launcher);

可以使用以下方式检索 SD 卡的路径:

String extStorageDirectory = Environment.getExternalStorageDirectory().toString();

然后在点击按钮时保存到 sdcard:

File file = new File(extStorageDirectory, "ic_launcher.PNG");
    outStream = new FileOutputStream(file);
    bm.compress(Bitmap.CompressFormat.PNG, 100, outStream);
    outStream.flush();
    outStream.close();

别忘了添加android.permission.WRITE_EXTERNAL_STORAGE 权限。

【讨论】:

  • 它是否保存在内部 sdcard 中?我不这么认为?它用于外部 SD 卡。
  • 为什么保存后png的尺寸变了?我在drawable中的原始png是180x40,但保存到内部存储的图像是540x120。正好是高度和宽度的 3 倍。有什么线索吗?
猜你喜欢
  • 2013-10-28
  • 1970-01-01
  • 2023-03-10
  • 1970-01-01
  • 1970-01-01
  • 2011-10-10
  • 1970-01-01
  • 1970-01-01
  • 2023-03-08
相关资源
最近更新 更多