Javaでディレクトリを作成する方法

Javaでディレクトリを作成するには、次のコードを使用します。

{空} 1。標準Java IOパッケージ - java.io.File

1.1単一のディレクトリを作成します。

new File("C:\\Directory1").mkdir();

1.2 "Directory2"という名前のディレクトリとそのすべてのサブディレクトリ "Sub2"と "Sub-Sub2"を一緒に作成します。

new File("C:\\Directory2\\Sub2\\Sub-Sub2").mkdirs()

__P.Sメソッド `mkdir()`と `mkdirs()`はいずれも、動作状態を示すブール値を返します。成功した場合はtrueを返し、それ以外の場合はfalseを返します。

{空} 2。 JDK 7では、Java NIOパッケージ( java.nio.file.Paths`と java.nio.file.Files`)を試してみてください。

Path path = Paths.get("C:\\Directory1");
Files.createDirectories(path);

1. Java IOの例

従来のJava IOディレクトリの例では、ディレクトリが存在するかどうかを確認し、存在しない場合はディレクトリを作成します。

CreateDirectoryExample.java

package com.mkyong.file;

import java.io.File;

public class CreateDirectoryExample {

    public static void main(String[]args) {

        File file = new File("C:\\Directory1");
        if (!file.exists()) {
            if (file.mkdir()) {
                System.out.println("Directory is created!");
            } else {
                System.out.println("Failed to create directory!");
            }
        }

        File files = new File("C:\\Directory2\\Sub2\\Sub-Sub2");
        if (!files.exists()) {
            if (files.mkdirs()) {
                System.out.println("Multiple directories are created!");
            } else {
                System.out.println("Failed to create multiple directories!");
            }
        }

    }

}

2. Java NIOの例

Java NIOクラスはJDK 7で追加されています。

CreateDirectoryExample.java

package com.mkyong.file;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class CreateDirectoryExample {
    public static void main(String[]args) {

        Path path = Paths.get("C:\\Directory2\\Sub2\\Sub-Sub2");
       //if directory exists?
        if (!Files.exists(path)) {
            try {
                Files.createDirectories(path);
            } catch (IOException e) {
               //fail to create directory
                e.printStackTrace();
            }
        }

    }

}

ディレクトリの作成に失敗した場合、例えば `IOException`がスローされます

java.nio.file.AccessDeniedException:/directory-name
    at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
    at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
    at sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:384)
    at java.nio.file.Files.createDirectory(Files.java:674)
    at java.nio.file.Files.createAndCheckIsDirectory(Files.java:781)
    at java.nio.file.Files.createDirectories(Files.java:767)

参考文献

ディレクトリの作成 リンク://タグ/ディレクトリ/[ディレクトリ]リンク://タグ/io/[io]リンク://タグ/java/[java]