File 类

File:它是文件和目录路径名的抽象表示
  • 文件和目录是可以通过File封装成对象的
  • 对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已。它可以是存在的,也可以是不存在的。将来是要通过具体的操作把这个路径的内容转换为具体存在的

image

演示:
File f1 = new File("E:\\Java\\java.txt");
System.out.println(f1);

File f2 = new File("E:\\Java","java.txt");
System.out.println(f2);

File f3 = new File("E:\\Java");
File f4 = new File(f3,"java.txt");
System.out.println(f4);

// 输出结果
E:\Java\java.txt
E:\Java\java.txt
E:\Java\java.txt

File类创建功能

image

演示:
// 需求1:在E:\\Java 目录下创建一个文件java.txt
File f1 = new File("E:\\Java\\java.txt");
System.out.println(f1.createNewFile());
// 需求2:在E:\\Java 目录下创建一个目录JavaSE
File f2 = new File("E:\\Java\\JavaSE");
System.out.println(f2.mkdir());
// 需求3:在E:\\Java 目录下创建一个多级目录JavaWeb\\HTML
File f3 = new File("E:\\Java\\JavaWeb\\HTML");
System.out.println(f1.mkdirs());

// 提示:
	如果相应的文件/目录不存在,则创建相应的文件/目录,并返回true
    如果相应的文件/目录存在,则不创建相应的文件/目录,并返回false

File类判断和获取功能

image

演示:
  • public boolean isDirectory()
// 创建File文件对象
File f = new File("myFile\\java.txt");
// 判断该对象是否是目录
System.out.println(f.isDirectory());

// 结果
false
  • public boolean isFile()
// 创建File文件对象
File f = new File("myFile\\java.txt");
// 判断该对象是否是文件
System.out.println(f.isFile());

// 结果
true
  • public boolean exists()
// 创建File文件对象
File f = new File("myFile\\java.txt");
// 判断该路径名表示的File是否存在
System.out.println(f.exists());

// 结果
true
  • public String getAbsolutePath()
// 创建File文件对象
File f = new File("myFile\\java.txt");
// 返回此抽象路径名的绝对路径名的字符串
System.out.println(f.getAbsolutePath());

// 结果
E:\IdeaProjects\JavaSE_Code\myFile\java.txt
  • public String getPath()
// 创建File文件对象
File f = new File("myFile\\java.txt");
// 返回此抽象路径名的字符串
System.out.println(f.getPath());

// 结果
myFile\java.txt
  • public String getName()
// 创建File文件对象
File f = new File("myFile\\java.txt");
// 返回此抽象路径名表示的文件或目录的名称
System.out.println(f.getName());

// 结果
java.txt
  • public String[] list()
// 创建File文件对象
File f = new File("E:\\Java");
// 返回此抽象路径名表示的目录中的文件和目录名称数组
String[] strArray = f.list();
for(String str : strArray){
    System.out.println(str);
}

// 结果
java.txt
JavaSE
javaWeb
  • public File[] listFiles()
// 创建File文件对象
File f = new File("E:\\Java");
// 返回此抽象路径名表示的目录中的文件和目录的File对象数组
File[] fileArray = f.listFiles();
for(String file : fileArray){
    System.out.println("文件\目录的绝对路径:"file+",文件\目录的名称:"+file.getName());
}

// 结果
文件\目录的绝对路径:E:\Java\java.txt,文件\目录的名称:java.txt
文件\目录的绝对路径:E:\Java\JavaSE,文件\目录的名称:JavaSE
文件\目录的绝对路径:E:\Java\javaWeb,文件\目录的名称:javaWeb

File类删除功能

image

演示:
// 创建文件对象
File f1 = new File("E:\\Java\\java.txt");
// 创建文件
System.out.println(f1.createNewFile());
// 删除文件
System.out.println(f1.delete());

// 提示:
	删除目录时,当目录为空时,可删除成功
        	当目录不为空时,删除失败,不可直接删除
绝对路径和相对路径的区别:
  • 绝对路径:完整的路径名,不需要任何其他信息就可以定位它所表示的文件。例如:E:\Java\java.txt
  • 相对路径:必须使用取自其他路径名的信息进行解释。例如:java.txt (在当前项目所在路径下的java.txt文件)
posted @   早晨9点  阅读(31)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示