Java 简明教程
Java - Directory Operations
Directory in Java
目录是一个文件,它可以包含其他文件和目录列表。可以使用 File 对象来创建目录、列出目录中可用的文件。有关完整详细信息,请查看可对文件对象调用的所有方法的列表,以及与目录相关的内容。
Creating Directories
有两个有用的 File 实用方法可用于创建目录 −
-
mkdir() method 创建目录,成功时返回 true,失败时返回 false。失败表示 File 对象中指定的路径已存在,或者由于尚未存在整个路径而无法创建目录。
-
mkdirs() method 创建目录及其所有父目录。
Example to Create Directory in Java
以下示例创建 "/tmp/user/java/bin" 目录 −
package com.tutorialspoint;
import java.io.File;
public class DirectoryTest {
public static void main(String args[]) {
String dirname = "/tmp/user/java/bin";
File directory = new File(dirname);
// Create directory now.
directory.mkdirs();
// create new file object
File file = new File("/tmp/user/java/bin");
System.out.println(file.exists());
}
}
编译并执行以上代码,创建“/tmp/user/java/bin”文件夹。
true
Note − Java 会自动按照惯例处理 UNIX 和 Windows 上的路径分隔符。如果你在 Java 的 Windows 版本上使用正斜杠 (/),路径仍然会正确解析。
Listing (Reading) Directories
可以使用 File 对象提供的 list() method 按以下方式列出目录中可用的所有文件和目录 -
Example to Read (List) a Directory in Java
package com.tutorialspoint;
import java.io.File;
public class DirectoryTest {
public static void main(String[] args) {
File file = null;
String[] paths;
try {
// create new file object
file = new File("/tmp");
// array of files and directory
paths = file.list();
// for each name in the path array
for(String path:paths) {
// prints filename and directory name
System.out.println(path);
}
} catch (Exception e) {
// if any error occurs
e.printStackTrace();
}
}
}
这将根据 /tmp 目录中可用的目录和文件生成以下结果 −
user
Deleting Directories
可以使用 File 对象提供的 delete() method 按以下方式删除目录 -
Example to Delete a Directory in Java
package com.tutorialspoint;
import java.io.File;
public class DirectoryTest {
public static void main(String[] args) {
File file = new File("/tmp/user/java/bin");
if(file.exists()) {
boolean success = file.delete();
if (success) {
System.out.println("The directory has been successfully deleted.");
}else {
System.out.println("The directory deletion failed.");
}
}else {
System.out.println("The directory is not present.");
}
}
}
这将根据 /tmp 目录中可用的目录和文件生成以下结果 −
The directory has been successfully deleted.