无法创建文件。 mkdirs()总是返回false

时间:2013-07-12 18:34:26

标签: java file return mkdirs

我有那段代码,但我无法创建文件。 configFile.getParentFile()mkdirs();返回false。

一段时间以前,我只是导出我的项目并且没有任何理由停止工作。

    File configFile = new File(ProfessionalWarns.getPluginDataFolder(),
            "config.yml");
    if (!configFile.exists()) {
        configFile.getParentFile().mkdirs();
        forceConfigUpdate = true;
    }

所有类(bukkit插件的代码): http://pastebin.com/hTPetAxu

1 个答案:

答案 0 :(得分:6)

mkdir创建一个目录而不是文件。当您获取文件的父级,然后在其上调用mkdir,并且它已经存在时,它无法创建。因为父母已经存在。

编辑:

您可能想要这样做:

File configFile = new File(ProfessionalWarns.getPluginDataFolder(),
    "config.yml");
if (!configFile.exists()) {
    boolean fileWasCreated = configFile.createNewFile();
    forceConfigUpdate = true;
}