使用所有父文件夹在Java中创建文件

Rob*_*Sun 2 java file

在Java中以任何方式创建没有其父文件夹和父文件夹的父文件夹的文件

这是要创建的文件的完整路径。D:\test3\ts435\te\util.log

此路径中没有任何文件夹,这意味着D:\下没有任何内容。

在Java中,当我创建此文件时

File testFile=new File(filePath);
testFile.createNewFile();
Run Code Online (Sandbox Code Playgroud)

它说找不到路径。然后,我尝试创建父文件夹“ te”。然后它再次失败,表示找不到父文件夹“ ts435”。

有什么办法可以强制创建文件吗?要创建带有或不带有其父级的文件,并且存在上层文件夹。

更新2019-06-28:

大家好,我终于找到原因了。有两种方法,mkdir()和mkdirs()。当目标文件夹的父文件夹不存在时,mkdir()将返回false,因为它无法强制构建整个文件夹结构。

但是,mkdirs()可以做到这一点。无论父文件夹是否存在,它都可以构建整个文件夹链。

Mus*_*waz 6

您可以使用此方法确保父目录存在File#mkdirs()

File f = new File("D:\\test3\\ts435\\te\\util.log");
f.getParentFile().mkdirs();
// ...
Run Code Online (Sandbox Code Playgroud)

如果父目录不存在,它将创建它们。