2017-08-29 49 views
-1

我想建立所有目录到'n'目录。例如,假设我有这样的事情:创建多达n个目录

File file = new File("/var/a/b/c/d/e/f/g"); 

对于n = 4,我需要建立多达4个目录的方法,即至C,我想知道是否有在Java IO库的方法某处已经这样做了。 是否有任何可以达到此目的的mkdir或mkdirs修改。

+0

使迪尔斯....没有工作? –

+0

@ΦXocę웃Pepeúpaツ将创建整个目录到g,我不想 – Nobita

回答

3

你将要使用Path.subpath()

File myPath = new File("/var/a/b/c/d/e/f/g"); 
Path fourLevels = myPath.toPath().subpath(0, 4); 
fourLevels.toFile().mkdirs();      // will create up to /var/a/b/c 
+0

[Ideone链接](https://ideone.com/dS8e4j)在其中你看不到实际创建的文件,但其中'File.toString()'指示哪个文件*应该被创建 – Aaron

+0

目录没有被创建。 – Nobita

+0

@Nobita新文件(“/ var/a/b/c”)。mkdirs()是否更好?否则恐怕这超出了你的问题范围。 – Aaron