这是我用来在默认图片文件夹中创建文件夹的代码:
File imagesFolder = new File(Environment.DIRECTORY_PICTURES, "/images");
if (!imagesFolder.exists()) {
Log.d("if imagesFolder exists - 1", "False");
imagesFolder.mkdirs();
} else {
Log.d("if imagesFolder exists - 1", "True");
}
if (!imagesFolder.exists()) {
Log.d("if imagesFolder exists - 2", "False");
imagesFolder.mkdirs();
} else {
Log.d("if imagesFolder exists - 2", "True");
}
Run Code Online (Sandbox Code Playgroud)
在日志我得到:
False
False
Run Code Online (Sandbox Code Playgroud)
第一次目录不存在,因此False然后立即我使用创建它mkdirs(),因此我希望第二个日志是,True但即使这样False,我的应用程序崩溃,因为NullPointerException在代码的后半部分
请帮忙
谢谢
你使用的Environment.DIRECTORY_PICTURES是错误的方式.它只是一个String常数, "Pictures"但不是一条路.你需要通过路径Environment.getExternalStoragePublicDirectory(string)
File pictureFolder = Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PICTURES
);
File imagesFolder = new File(pictureFolder, "images");
// etc
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4626 次 |
| 最近记录: |