相关疑难解决方法(0)

无法在Android 10中创建目录

我无法在android 10中创建目录。直到android Oreo,它都可以在设备上使用。

我尝试了两种创建文件夹的方法。

使用 File.mkdir()

   File f = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pastebin");
                    if (!f.isFile()) {
                        if (!(f.isDirectory())) {
                               success =  f.mkdir();
                        }
Run Code Online (Sandbox Code Playgroud)

在此,变量success 始终为false,这表示未创建目录。

使用 Files.createDirectory()

   File f = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pastebin");
                    if (!f.isFile()) {
                        if (!(f.isDirectory())) {
                            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                                try {
                                    Files.createDirectory(Paths.get(f.getAbsolutePath()));
                                } catch (IOException e) {
                                    e.printStackTrace();
                                    Toast.makeText(getApplicationContext(), R.string.unable_to_download, Toast.LENGTH_LONG).show();
                                }
                            } else {
                                f.mkdir();
                            }
                        }
Run Code Online (Sandbox Code Playgroud)

导致此异常:

pzy64.pastebinpro W/System.err: java.nio.file.AccessDeniedException: /storage/emulated/0/Pastebin
pzy64.pastebinpro W/System.err:     at sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:391)
pzy64.pastebinpro W/System.err: …
Run Code Online (Sandbox Code Playgroud)

java android

2
推荐指数
5
解决办法
268
查看次数

标签 统计

android ×1

java ×1