一、File类概述
java.io.File
类,文件和目录路径名的抽象表示形式- Java把电脑中的文件和文件夹封装成了一个
File
类我们可以使用File
类对文件和文件夹进行操作 - 我们可以使用
File
类的方法:创建一个文件/文件夹;删除文件/文件夹;获取文件/文件夹;判断文件夹是否存在,对文件夹进行遍历以及判断文件夹的大小 - File类是一个与系统无关的类,任何的操作系统都可以使用这个类中的方法
static String pathSeparator
与系统有关的分隔符,为了方便,它被表示为一个字符串static char pathSeparator
一系统有关的路径分隔符static String separator
与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串static char separatorChar
与系统有关的默认名称分隔符
二、File类中的构造方法
1️⃣File (String pathname)
:通过给定跳转路径字符串转换为抽象路径来创建一个新file
实例
参数:
String pathname
:字符串的路径名称- 路径可以是文件结尾也可以是文件夹结尾
- 路径可以是相对路径也可以是绝对路径
- 路径可以是存在,也可以是不存在
- 创建File对象,只是把字符串路径封装为File对象,不考虑路径的真假情况
2️⃣File(String parent,String child)
根据parent
路径名字字符串和child
路径名字字符串创建一个新File
实例
参数:把路径分成两部分
String parent
:父路径String child
:子路径
好处:父路径和子路径可以单独书写,使用起来十分灵活,父路径和子路径都可以变化
3️⃣ File(File parent,String child)
根据parent
抽象路径名和child
路径名字符串创建一个新的File
实例
参数:把路径分成了两部分
File parent
:父路径
String child
:子路径
- 好处:父路径和子路径可以单独写,使用起来十分的灵活,父路径和子路径都可以变化
- 父路径是File路径,可以使用File的方法对其进行一些操作,再使用路径创建对象
public class demoFile { public static void main(String[] args) { String pathSeparator= File.pathSeparator; System.out.println(pathSeparator);//路径分隔符Windows ; Linux : String separator=File.separator; System.out.println(separator);//文件名称分隔符Windows \(反斜杠) Linux/(正斜杠) } }
import java.io.File; /** * @author :CaiCai * @date : 2022/4/16 12:58 */ public class demoFile1 { public static void main(String[] args) { demo(); demo1("c:\\","a.txt"); demo2(); } private static void demo(){ File f1=new File("D:\\data"); System.out.println(f1);//D:\data } private static void demo1(String parent,String child){ File f2=new File(parent,child); System.out.println(f2); } private static void demo2(){ File parent =new File("c:\\"); File file=new File(parent,"hello.java"); System.out.println(file); } }
三、File类获取功能的方法
获取功能的方法
四、判断功能的方法
五、创建删除功能的方法
六、File类遍历
File类遍历目录的功能:
1️⃣public String[] list()
:返回一个String
数组,表示该File
目录中的所有子文件或目录.
遍历构造方法遍历的目录,或获取目录中的所有文件/文件夹的名称,把获取到的多个名称存储到一个String
类型的数组中
2️⃣public File[] listFiles()
:返回一个File
数组,表示该File
目录中的所有的子文件或目录
注意:
list
方法和listFiles
方法遍历的是构造方法中给出的目录- 如果构造方法中给出的目录的路径不存在,会抛出空指针异常
- 如果构造方法中的路径不是一个目录,也会抛出空指针异常
import java.io.File; /** * @author :CaiCai * @date : 2022/4/16 14:33 */ /* File类遍历目录的功能: public String[] list():返回一个String数组,表示该File目录中的所有子文件或目录. 遍历构造方法遍历的目录,或获取目录中的所有文件/文件夹的名称,把获取到的多个名称存储到一个String类型的数组中 public File[] listFiles():返回一个File数组,表示该File目录中的所有的子文件或目录 注意: list方法和listFiles方法遍历的是构造方法中给出的目录 如果构造方法中给出的目录的路径不存在,会抛出空指针异常 如果构造方法中的路径不是一个目录,也会抛出空指针异常 */ public class demoFile6 { public static void main(String[] args) { show01(); show02(); } private static void show01() { File file = new File("C:\\Program Files (x86)\\Google"); String[] arr = file.list(); for (String fileName : arr) { System.out.println(fileName); } } private static void show02(){ File file1 = new File("C:\\Program Files (x86)\\Google"); File[] files = file1.listFiles(); for (File f : files) { System.out.println(f); } } }