File类
Java 的 java.io.File
类是 Java I/O 库的一部分,用于表示文件和目录的信息。File
类提供了检查文件是否存在、获取文件大小、读取和设置文件名等方法。以下是 File
类的一些关键特性和常用方法:
特性
- 文件和目录:
File
对象可以代表文件系统上的文件或目录。 - 平台无关性:
File
类使用文件分隔符(在 UNIX 系统上是/
,在 Windows 上是\
),但 Java 通过File.separator
属性隐藏了这个差异,使得代码更具可移植性。
常用方法
-
构造函数:
File(String pathname)
:通过给定的路径名创建一个新File
对象。File(String parent, String child)
:创建一个新File
对象,表示具有指定父路径和子路径的新文件。
-
文件检查:
exists()
:检查此文件或目录是否存在。isFile()
:检查此路径名是否为文件。isDirectory()
:检查此路径名是否为目录。
-
文件属性:
length()
:返回文件的长度。lastModified()
:返回文件最后修改的时间。
-
文件操作:
delete()
:删除此文件或目录。renameTo(File dest)
:重命名文件或移动文件到不同的目录。
-
文件名和路径:
getName()
:返回文件名。getPath()
:返回文件的路径。getAbsolutePath()
:返回文件的绝对路径。getParent()
:返回父目录的路径。setWritable(boolean writable)
:设置文件是否可写。setReadable(boolean readable)
:设置文件是否可读。
-
文件列表:
listFiles()
:返回一个File
数组,表示目录中的所有文件和目录。
-
创建和验证:
mkdir()
:创建此文件指定的目录。mkdirs()
:创建此文件指定的目录,包括任何必需但不存在的父目录。
示例用法
以下是使用 File
类的一些示例:
import java.io.File;
public class FileExample {
public static void main(String[] args) {
// 创建File对象
File file = new File("example.txt");
// 检查文件是否存在
if (file.exists()) {
System.out.println("File exists.");
} else {
System.out.println("File does not exist.");
}
// 获取文件长度
long fileSize = file.length();
System.out.println("File size: " + fileSize + " bytes");
// 重命名文件
boolean renamed = file.renameTo(new File("renamedExample.txt"));
if (renamed) {
System.out.println("File renamed successfully.");
}
// 列出目录中的文件
File directory = new File(".");
File[] files = directory.listFiles();
for (File f : files) {
System.out.println(f.getName());
}
}
}
File
类是处理文件和目录的基础工具,它提供了丰富的方法来执行文件系统的基本操作。然而,File
类并不提供用于读取或写入文件内容的方法;这些功能由其他 I/O 类提供,如 FileInputStream
、FileOutputStream
、FileReader
和 FileWriter
。