SachinKS 2013-06-09 03:39 采纳率: 0%
浏览 2315
已采纳

为什么我的文件保存在这里?

我希望照片能保存在这里:

Android/data/com.androidproject/files/Camera/photo.png

但是根据 Log.v 声明,它保存在这里:

file:///storage/emulated/0/Android/data/com.androidproject/files/Camera/photo.png

代码:

private class ClickListener implements View.OnClickListener {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

            File dir = new File(getActivity().getExternalFilesDir("Camera"),
                    "photo.png");               
            Uri outputFileUri = Uri.fromFile(dir);
            Log.v("FILE", "" + outputFileUri);
            intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
            startActivityForResult(intent, CALL_BACK);
        }
    }

为什么不能保存在我期望的位置?怎么改?

  • 写回答

2条回答

  • Kakalapa1986 2013-06-09 06:06
    关注

    getFilesDir()代替`getExternalFilesDir()来保存:

    File f = new File(getFilesDir() + File.separator + "Camera" + File.separator + "photo.png");
    f.mkdirs();
    

    这样能调整新文件,要确保保存路径存在。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 shape_predictor_68_face_landmarks.dat
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料