Java中的File类代表了一个文件或者目录(文件夹)。它提供了一些便捷的方法,我们可以使用这些方法来操作文件或者目录,比如读取、删除、重命名等。本文将详细讲解Java中的File类,内容如下:
File类的常用方法
创建文件或目录
File(String pathname)
:根据路径创建File对象,其中path可以是文件的相对路径或绝对路径。
File f = new File("D:/test.txt");
try {
f.createNewFile(); // 创建文件
} catch (IOException e) {
e.printStackTrace();
}
File(String parent, String child)
:根据父路径和子路径创建File对象,其中parent是父路径,child是子路径。
File f1 = new File("D:/", "test"); // 创建文件夹
f1.mkdir();
判断文件或目录是否存在
boolean exists()
:判断File对象所代表的文件或目录是否存在。
File f = new File("D:/test.txt");
if(f.exists()) {
System.out.println("文件存在");
} else {
System.out.println("文件不存在");
}
文件和目录操作
boolean delete()
:删除File对象所代表的文件或目录。boolean renameTo(File dest)
:把File对象所代表的文件或目录重命名为dest代表的文件或目录。
File f = new File("D:/test.txt");
if(f.delete()) {
System.out.println("删除成功");
} else {
System.out.println("删除失败");
}
File f1 = new File("D:/test");
if(f.renameTo(f1)) {
System.out.println("重命名成功");
} else {
System.out.println("重命名失败");
}
File类的示例代码
示例1:读取文件内容
import java.io.*;
public class ReadFileDemo {
public static void main(String[] args) {
File file = new File("D:/test.txt");
try (BufferedReader reader = new BufferedReader(new FileReader(file))) {
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
示例2:递归遍历目录
import java.io.*;
public class TraverseDirectoryDemo {
public static void main(String[] args) {
String path = "D:/test";
traverse(new File(path));
}
private static void traverse(File file) {
if (file.isDirectory()) {
System.out.println("目录:" + file.getName());
File[] files = file.listFiles();
if (files != null) {
for (File f : files) {
traverse(f);
}
}
} else {
System.out.println("文件:" + file.getName());
}
}
}
以上就是Java中的File类的详细讲解,希望能对大家有所帮助。