Java中的File类是什么?

  • Post category:Java

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类的详细讲解,希望能对大家有所帮助。