我试图创建一个文件来保存相机中的照片,结果我无法创建该文件。但我真的找不到错误。你能看看它并给我一些建议吗?
private File createImageFile(){
File imageFile=null;
String stamp=new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
File dir= Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
String imageFileName="JPEG_"+stamp+"_";
try {
imageFile=File.createTempFile(imageFileName,".jpg",dir);
} catch (IOException e) {
Log.d("YJW",e.getMessage());
}
return imageFile;
}
我已经添加了权限。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
该方法总是给出这样的错误:
打开失败:ENOENT(没有这样的文件或目录)
原文由 Jiawei Yang 发布,翻译遵循 CC BY-SA 4.0 许可协议
图片目录可能还不存在。它不能保证在那里。
在
getExternalStoragePublicDirectory()
的 API 文档中,代码使用mkdirs
确保目录存在:…所以它可能就像在您之前将
path.mkdirs()
添加到现有代码中一样简单createTempFile
。