1

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

前段时间有效,我只是导出我的项目,然后无缘无故停止工作。

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

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

4

1 回答 1

6

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

编辑:

你可能想做:

File configFile = new File(ProfessionalWarns.getPluginDataFolder(),
    "config.yml");
if (!configFile.exists()) {
    boolean fileWasCreated = configFile.createNewFile();
    forceConfigUpdate = true;
}
于 2013-07-12T18:36:15.637 回答