2017-08-29 3 views
-1

すべてのディレクトリを 'n'個のディレクトリまで構築します。例えば、私はこのようなものがあるとします。最大n個のディレクトリを作成する

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

についてはN = 4を、私はすなわちCまで4つのディレクトリを構築する方法を必要とし、図書館IOのJavaのメソッドがあった場合、私は思っていましたこれはすでにどこかで行われています。 この目的に役立つmkdirまたはmkdirの変更はありますか?

+0

はdirsに.... didntの仕事をしますか? –

+0

@ΦXocen笑Пepeúpaツは、ディレクトリ全体を作成することを望んでいません。 – 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 link](https://ideone.com/dS8e4j)では、実際に作成されたファイルは表示されませんが、ここで 'File.toString()'はどのファイル*が作成されるべきかを示します – Aaron

+0

ディレクトリが作成されていません。 – Nobita

+0

@Nobita '新しいファイル("/var/a/b/c ")。mkdirs()'はうまく動作しますか?それ以外の場合は、あなたの質問の範囲外です。 – Aaron

関連する問題