Android在文件夹中保存位图- duplicate -



我的问题是每当我保存位图。我将一个保存在我想要的文件夹(我的文件夹)中,另一个保存在DCIM/Camera中。我没有看到任何代码使它保存到DCIM目录?

这是我的代码…

    case R.id.menu_save:
        try {
            String path = Environment.getExternalStorageDirectory()
                    .toString();
            File myNewFolder = new File(path + "/MyFolder");
            myNewFolder.mkdirs();
            OutputStream fOut = null;
            File file = new File(path, "/MyFolder/HK" + filename + ".jpg");
            fOut = new FileOutputStream(file);
            newBitmap.compress(Bitmap.CompressFormat.JPEG, 85, fOut);
            fOut.flush();
            fOut.close();
            MediaStore.Images.Media.insertImage(getContentResolver(),
                    file.getAbsolutePath(), file.getName(), file.getName());
            Toast.makeText(getApplicationContext(),
                    filename + "Has been saved!", Toast.LENGTH_LONG)
                    .show();
        } catch (Exception e) {
            Toast.makeText(
                    getApplicationContext(),
                    "Problem to Save the File", Toast.LENGTH_LONG).show();
        }
        break;

与链接的线程@Dixit一样,您可以使用

指定文件路径URI
File fileDir = new File(Environment.getExternalStorageDirectory() +
    "/saved_images");
fileDir.mkdirs();
File file = new File(fileDir, "image.jpg");
Uri outputFileUri = Uri.fromFile(file);
intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);

这样相机将保存图像到指定的路径,而不是DCIM文件夹。

EDIT:你必须事先在sd卡上创建文件夹,也许这就是问题所在。

相关内容

  • 没有找到相关文章