为什么我的代码在 windows 而不是在 linux JAVA 上创建目录

Why my code creates directory on windows but not on linux JAVA

我有这样的 mkdirs 代码;

File dir = new File ("/Mydir/");
            if(dir.exists()==false) {
                dir.mkdirs();
            }

正常工作并在 windows 上创建目录但在 linux..

上不工作

/MyDir/ 是对根目录 / 中目录的引用 - 您需要 root 权限才能在那里写入。

要在用户主目录中创建目录,您可以在 linux 中使用“~/MyDir” - 但在 Windows.

中将不再有效

如果您被迫使用旧式文件操作,您可以去

 new File(new File(System.getProperty("user.home")), "MyDir").mkdir();

更好的方法是调用

 Files.createDirectories(
    Paths.get(System.getProperty("user.home"), "MyDir"));