So erstellen Sie ein Verzeichnis in Java
Verwenden Sie zum Erstellen eines Verzeichnisses in Java den folgenden Code:
1. Standard Java IO Paket -java.io.File
1.1 Create a single directory.
new File("C:\\Directory1").mkdir();
1.2 Create a directory named “Directory2 and all its sub-directories “Sub2” and “Sub-Sub2” together.
new File("C:\\Directory2\\Sub2\\Sub-Sub2").mkdirs()
P.S Both method mkdir() and mkdirs() are returning a boolean value to indicate the operation status : true if succeed, false otherwise.
2. Versuchen Sie für JDK 7 das Java NIO-Paket -java.nio.file.Paths undjava.nio.file.Files
Path path = Paths.get("C:\\Directory1");
Files.createDirectories(path);
1. Java IO Beispiel
Überprüfen Sie in einem klassischen Java IO-Verzeichnisbeispiel, ob ein Verzeichnis vorhanden ist. Wenn nein, erstellen Sie es.
CreateDirectoryExample.java
package com.example.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 Beispiel
Java NIO-Klassen werden in JDK 7 hinzugefügt.
CreateDirectoryExample.java
package com.example.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();
}
}
}
}
Wenn ein Verzeichnis nicht erstellt werden kann, werden beispielsweiseIOException ausgelöst
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)