Java的file类
在Java中,File 类是 java.io 包下的一个非常重要的类,它用于文件和目录路径名的抽象表示形式。尽管 File 类包含了许多与文件和目录操作相关的方法,但它本身并不直接用于文件的读写。相反,它主要用于文件和目录的创建、删除、重命名、检查以及文件属性的获取等。
构造方法
File类有多个构造方法,用于创建File对象实例:
File(String pathname)
: 通过给定的路径名字符串创建一个新的File实例。
File(String parent, String child)
: 根据父路径名字符串和子路径名字符串创建一个新的File实例。
File(File parent, String child)
: 根据父File对象和子路径名字符串创建一个新的File实例。
主要方法
File类提供了大量方法来操作文件和目录:
1.检查文件或目录是否存在
boolean exists()
: 判断文件或目录是否存在。
boolean isDirectory()
: 判断是否是一个目录。
boolean isFile()
: 判断是否是一个文件。
2.获取文件或目录的信息
String getName()
: 返回文件或目录的名称。
String getPath()
: 返回文件或目录的路径名。
String getAbsolutePath()
: 返回文件或目录的绝对路径名。
long length()
: 返回文件的大小(以字节为单位)。
long lastModified()
: 返回文件最后修改的时间(以毫秒为单位)。
3.创建、删除和重命名文件或目录
boolean createNewFile()
: 创建一个新文件,如果文件已存在则不创建。
boolean delete()
: 删除文件或目录。
boolean deleteOnExit()
: 注册文件以便在虚拟机正常终止时删除它。
boolean renameTo(File dest)
: 重命名文件或目录。
4.列出目录中的文件和子目录
String[] list()
: 列出目录中的文件和子目录名(不包括路径)。
File[] listFiles()
: 列出目录中的文件和子目录的File对象。
5.文件过滤器
File[] listFiles(FilenameFilter filter)
: 列出目录中使用指定过滤器的文件和子目录。
File[] listFiles(FileFilter filter)
: 列出目录中使用指定过滤器的文件和子目录。
6.其他方法
boolean canRead()
: 判断文件是否可读。
boolean canWrite()
: 判断文件是否可写。
boolean isHidden()
: 判断文件是否隐藏。
boolean isAbsolute()
: 判断路径名是否为绝对路径名。
示例
下面是一个简单的示例,展示了如何使用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("文件存在");
} else {
System.out.println("文件不存在");
try {
// 尝试创建文件
if (file.createNewFile()) {
System.out.println("文件创建成功");
}
} catch (Exception e) {
e.printStackTrace();
}
}
// 创建一个File对象,表示一个目录
File directory = new File("my_directory");
// 检查目录是否存在
if (directory.exists() && directory.isDirectory()) {
// 列出目录中的文件
File[] files = directory.listFiles();
if (files != null) {
for (File f : files) {
System.out.println(f.getName());
}
}
} else {
System.out.println("目录不存在或不是目录");
}
}
}
注:当使用listFiles()方法时,如果目录不存在或者由于某种原因无法访问,它可能会返回null。因此,在迭代返回的File数组之前,最好先检查它是否为null。
注意事项
File 类主要用于文件和目录的元数据操作,而不是内容操作。
文件的存在性和可访问性可能在调用 File 类的方法时发生变化。
某些 File 操作可能由于平台相关的安全策略限制而失败。
原创文章,作者:速盾高防cdn,如若转载,请注明出处:https://www.sudun.com/ask/77544.html