Android的 - 保存图像到指定的文件夹 [英] Android - Save images in an specific folder

查看:129
本文介绍了Android的 - 保存图像到指定的文件夹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要救我的应用程序中的特定文件夹中拍摄的照片。我读过很多解决这个问题,但我不能让任何人的工作,所以我寻求帮助。

MainActivity.java

 公共无效的onClick(视图v){

    意图摄像头=新的意图(
            android.provider.MediaStore.ACTION_IM​​AGE_CAPTURE);

    //已创建的文件夹
    字符串目录名= Environment.getExternalStorageDirectory()。getPath()
            +/ MyAppFolder / MyApp的+ N +巴纽;

    乌里uriSavedImage = Uri.fromFile(新建文件(目录名));
    camera.putExtra(MediaStore.EXTRA_OUTPUT,uriSavedImage);
    startActivityForResult(摄像机,1);

    ñ++;
}
 

AndroidManifest.xml中

 <使用-权限的Andr​​oid:名称=android.permission.CAMERA/>
<使用-权限的Andr​​oid:名称=android.permission.WRITE_EXTERNAL_STORAG​​E/>
 

解决方案

通过以下code,去其工作对我罚款。

 私人无效createDirectoryAndSaveFile(位图imageToSave,字符串文件名){

    文件直接=新的文件(Environment.getExternalStorageDirectory()+/目录名称);

    如果(!direct.exists()){
        文件wallpaperDirectory =新的文件(/ SD卡/目录名称/);
        wallpaperDirectory.mkdirs();
    }

    档案文件=新的文件(新文件(/ SD卡/目录名称/),文件名);
    如果(file.exists()){
        file.delete();
    }
    尝试 {
        FileOutputStream中出=新的FileOutputStream(文件);
        imageToSave.com preSS(Bitmap.Com pressFormat.JPEG,100,出);
        了out.flush();
        out.close();
    }赶上(例外五){
        e.printStackTrace();
    }
}
 

I need to save the pictures taken with my app in an specific folder. I've read many solutions to this problem but I couldn't make any of them work so I ask for help.

MainActivity.java

public void onClick(View v) {

    Intent camera = new Intent(
            android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

    //Folder is already created
    String dirName = Environment.getExternalStorageDirectory().getPath()
            + "/MyAppFolder/MyApp" + n + ".png";

    Uri uriSavedImage = Uri.fromFile(new File(dirName));
    camera.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage);
    startActivityForResult(camera, 1);

    n++;
}

AndroidManifest.xml

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

解决方案

Go through the following code , its working fine for me.

private void createDirectoryAndSaveFile(Bitmap imageToSave, String fileName) {

    File direct = new File(Environment.getExternalStorageDirectory() + "/DirName");

    if (!direct.exists()) {
        File wallpaperDirectory = new File("/sdcard/DirName/");
        wallpaperDirectory.mkdirs();
    }

    File file = new File(new File("/sdcard/DirName/"), fileName);
    if (file.exists()) {
        file.delete();
    }
    try {
        FileOutputStream out = new FileOutputStream(file);
        imageToSave.compress(Bitmap.CompressFormat.JPEG, 100, out);
        out.flush();
        out.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

这篇关于Android的 - 保存图像到指定的文件夹的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆