Java - 一次创建多个子文件夹

Rai*_*ndo 5 java directory subdirectory

我正在尝试创建一个函数,使用 Java 在一条指令中创建多个文件夹/子文件夹。\n我可以使用 的File方法mkdirs()来创建单个文件夹及其父文件夹。

\n\n

我想要的结构示例:

\n\n
folder\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 subfolder\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 subsubfolder1\n    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 subsubfolder2\n    \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 subsubfolder3\n
Run Code Online (Sandbox Code Playgroud)\n\n

例如,在 Linux 中,我可以使用以下命令来实现此目的:

\n\n
mkdir -p folder/subfolder/{subsubfolder1,subsubfolder2,subsubfolder3}\n
Run Code Online (Sandbox Code Playgroud)\n\n

有没有一种方法可以在 Java 中实现这一目标?

\n

Vla*_*lad 4

不确定是否存在这样的方法,但您当然可以定义一个:

import java.io.File;
import java.util.Arrays;

class Test {

  public static boolean createDirectoriesWithCommonParent(
      File parent, String...subs) {

    parent.mkdirs();
    if (!parent.exists() || !parent.isDirectory()) {
      return false;
    }

    for (String sub : subs) {
      File subFile = new File(parent, sub);
      subFile.mkdir();
      if (!subFile.exists() || !subFile.isDirectory()) {
        return false;
      }
    }
    return true;
  }

  public static void main(String[] args) {
     createDirectoriesWithCommonParent(new File("test/foo"), "a", "b", "c");
  }
}
Run Code Online (Sandbox Code Playgroud)