File 类
File:它是文件和目录路径名的抽象表示
- 文件和目录是可以通过File封装成对象的
- 对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已。它可以是存在的,也可以是不存在的。将来是要通过具体的操作把这个路径的内容转换为具体存在的
演示:
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类创建功能
演示:
// 需求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类判断和获取功能
演示:
- 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类删除功能
演示:
// 创建文件对象
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文件)
本文来自博客园,作者:早晨9点,转载请注明原文链接:https://www.cnblogs.com/onesun/p/15807138.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY