本地化网站建设,个人建网站一般多少钱,营销软文,四川建设网和四川省公共资源交易信息网File文件 1. 概述2. 构造方法2.1 方法2.2 代码示例 3. 成员方法3.1 判断、获取的方法3.1.1 方法3.1.2 代码示例 3.2 创建、删除的方法3.2.1 方法3.2.2 代码示例 3.3 获取、遍历的方法3.3.1 重点方法3.3.1.1 方法3.3.1.2 代码示例 3.3.2 所有方法3.3.2.1 方法3.3.2.2 代码示例 4… File文件 1. 概述2. 构造方法2.1 方法2.2 代码示例 3. 成员方法3.1 判断、获取的方法3.1.1 方法3.1.2 代码示例 3.2 创建、删除的方法3.2.1 方法3.2.2 代码示例 3.3 获取、遍历的方法3.3.1 重点方法3.3.1.1 方法3.3.1.2 代码示例 3.3.2 所有方法3.3.2.1 方法3.3.2.2 代码示例 4. 注意事项 1. 概述
java.io.File 是 Java 中用于表示文件或目录的类。它提供了操作文件和目录的方法例如创建、删除、重命名等。
File 类中的对象可以用来访问文件的属性如文件路径、名称、大小等。
File 类的构造方法可以根据不同的参数创建文件对象。常见的构造方法有 File(String pathname)根据文件路径创建文件对象。路径可以是绝对路径或相对路径。 File(String parent, String child)根据父路径名字符串和子路径名字符串创建文件对象。父路径和子路径通过拼接而成。 File(File parent, String child)根据父路径对应文件对象和子路径名字符串创建文件对象。父路径和子路径通过拼接而成。
File 类提供了多个方法来操作文件和目录包括 创建和删除文件或目录的方法createNewFile()、mkdir()、mkdirs()、delete() 文件属性的方法exists()、isFile()、isDirectory()、isHidden()、length() 文件信息的方法getName()、getPath()、getAbsolutePath()、getParent()
2. 构造方法
2.1 方法
File 类的构造方法可以根据不同的参数创建文件对象。
方法名称说明public File(String pathname) 根据文件路径创建文件对象public File(String parent, String child) 根据父路径名字符串和子路径名字符串创建文件对象(拼接)public File(File parent, String child)根据父路径对应文件对象和子路径名字符串创建文件对象(拼接)
2.2 代码示例
代码示例 练习将该路径用文件对象表示“C:\Users\用户\Desktop\JAVA”package text.text03;import java.io.File;/*File
FileFile对象表示路径可以是文件也可以是文件夹这个路径可以存在也可以不存在绝对路径带盘符的路径
相对路径不带盘符的路径默认到当前项目下去找构造方法
| 方法名称 | 说明 |
| ------------------------------------------- | -------------------------------------------------- |
| public File(String pathname) | 根据文件路径创建文件对象 |
| public File(String parent, String child) | 根据父路径名字符串和子路径名字符串创建文件对象(拼接) |
| public File(File parent, String child) | 根据父路径对应文件对象和子路径名字符串创建文件对象(拼接) |练习将该路径用文件对象表示C:\Users\用户\Desktop\JAVA*/
public class text01 {public static void main(String[] args) {//1.public File(String pathname) : 根据文件路径创建文件对象System.out.println(1.public File(String pathname) : 根据文件路径创建文件对象);String str1 C:\\Users\\用户\\Desktop\\JAVA;//创建文件对象File file1 new File(str1);System.out.println(file1); //C:\Users\用户\Desktop\JAVA//2.public File(String parent, String child) : 根据父路径名字符串和子路径名字符串创建文件对象System.out.println(2.public File(String parent, String child) : 根据父路径名字符串和子路径名字符串创建文件对象);String str2 C:\\Users\\用户\\Desktop;String str3 JAVA;//创建文件对象File file2 new File(str2, str3);System.out.println(file2); //C:\Users\用户\Desktop\JAVA//3.public File(File parent, String child) : 根据父路径对应文件对象和子路径名字符串创建文件对象System.out.println(3.public File(File parent, String child) : 根据父路径对应文件对象和子路径名字符串创建文件对象 );String str4 C:\\Users\\用户\\Desktop;//创建文件对象File file4 new File(str4);String str5 JAVA;//创建文件对象File file5 new File(file4, str5);System.out.println(file5); //C:\Users\用户\Desktop\JAVA}
} 输出结果
3. 成员方法
在 Java 的 java.io.File 类中有许多有用的成员方法来操作文件和目录。这些方法提供了各种文件系统操作和文件属性的访问。
3.1 判断、获取的方法
3.1.1 方法
方法名称说明public boolean isDirectory()判断此路径名表示的 File 是否为文件夹public boolean isFile()判断此路径名表示的 File 是否为文件public boolean exists()判断此路径名表示的 File 是否存在public long length()返回文件的大小(字节数量)public String getAbsolutePath()返回文件的绝对路径public String getPath()返回定义文件时使用的路径public String getName()返回文件的名称带后缀public long lastModified()返回文件的最后修改时间(时间毫秒值)
注意
public long length() : 返回文件的大小(字节数量) 细节1这个方法只能获取文件的大小单位是字节如果想要MG可以不断地除以1024 细节2这个方法无法获取文件夹的大小如果想要获取文件夹的大小需要把整个文件夹里面所有的文件大小累加起来 public string getName() : 返回文件的名称带后缀 细节1调用者是文件返回的是文件名后缀名、扩展名 细节2调用者是文件夹返回值是文件夹的名字
3.1.2 代码示例
代码示例 文件夹D:\QQ 文件D:\QQ\QQ.txt 不存在的文件D:\QQ\QQQQQQ.txtpackage text.text03;import java.io.File;/*File的常见成员方法判断、获取| 方法名称 | 说明 |
| ------------------------------- | ---------------------------------- |
| public boolean isDirectory() | 判断此路径名表示的File是否为文件夹 |
| public boolean isFile() | 判断此路径名表示的File是否为文件 |
| public boolean exists() | 判断此路径名表示的File是否存在 |
| public long length() | 返回文件的大小(字节数量) |
| public string getAbsolutePath() | 返回文件的绝对路径 |
| public string getPath() | 返回定义文件时使用的路径 |
| public string getName() | 返回文件的名称带后缀 |
| public long lastModified() | 返回文件的最后修改时间(时间毫秒值) |注意
1.public long length() : 返回文件的大小(字节数量)细节1这个方法只能获取文件的大小单位是字节如果想要MG可以不断地除以1024细节2这个方法无法获取文件夹的大小如果想要获取文件夹的大小需要把整个文件夹里面所有的文件大小累加起来
2.public string getName() : 返回文件的名称带后缀细节1调用者是文件返回的是文件名后缀名、扩展名细节2调用者是文件夹返回值是文件夹的名字文件夹D:\QQ
文件D:\QQ\QQ.txt
不存在的文件D:\QQ\QQQQQQ.txt*/
public class text02 {public static void main(String[] args) {//1.public boolean isDirectory() : 判断此路径名表示的File是否为文件夹System.out.println(1.public boolean isDirectory() : 判断此路径名表示的File是否为文件夹);//存在的文件夹File file1 new File(D:\\QQ);//存在的文件File file2 new File(D:\\QQ\\QQ.txt);//不存在的文件File file3 new File(D:\\QQ\\QQQQQQ.txt);boolean directory1 file1.isDirectory();boolean directory2 file2.isDirectory();boolean directory3 file3.isDirectory();System.out.println(file1 是否为文件夹 directory1); //trueSystem.out.println(file2 是否为文件夹 directory2); //falseSystem.out.println(file3 是否为文件夹 directory3); //falseSystem.out.println();//2.public boolean isFile() : 判断此路径名表示的File是否为文件System.out.println(2.public boolean isFile() : 判断此路径名表示的File是否为文件);//存在的文件夹File file4 new File(D:D:\\QQ);//存在的文件File file5 new File(D:\\QQ\\QQ.txt);//不存在的文件File file6 new File(D:D:\\QQ\\QQQQQQ.txt);boolean isFile1 file4.isFile();boolean isFile2 file5.isFile();boolean isFile3 file6.isFile();System.out.println(file4 是否为文件 isFile1); //falseSystem.out.println(file5 是否为文件 isFile2); //trueSystem.out.println(file6 是否为文件 isFile3); //falseSystem.out.println();//3.public boolean exists() : 判断此路径名表示的File是否存在System.out.println(3.public boolean exists() : 判断此路径名表示的File是否存在);//存在的文件夹File file7 new File(D:D:\\QQ);//存在的文件File file8 new File(D:\\QQ\\QQ.txt);//不存在的文件File file9 new File(D:D:\\QQ\\QQQQQQ.txt);boolean exists1 file7.exists();boolean exists2 file8.exists();boolean exists3 file9.exists();System.out.println(file7 是否为存在 exists1); //falseSystem.out.println(file8 是否为存在 exists2); //trueSystem.out.println(file9 是否为存在 exists3); //falseSystem.out.println();//4.public long length() : 返回文件的大小(字节数量)//细节1这个方法只能获取文件的大小单位是字节如果想要MG可以不断地除以1024//细节2这个方法无法获取文件夹的大小如果想要获取文件夹的大小需要把整个文件夹里面所有的文件大小累加起来System.out.println(4.public long length() : 返回文件的大小(字节数量));//存在的文件夹File file10 new File(D:D:\\QQ);//存在的文件File file11 new File(D:\\QQ\\QQ.txt);//不存在的文件File file12 new File(D:D:\\QQ\\QQQQQQ.txt);long length1 file10.length();long length2 file11.length();long length3 file12.length();System.out.println(file10 的文件大小是 length1); //0System.out.println(file11 的文件大小是 length2); //27System.out.println(file12 的文件大小是 length3); //0System.out.println();//5.public string getAbsolutePath() : 返回文件的绝对路径System.out.println(5.public string getAbsolutePath() : 返回文件的绝对路径);//存在的文件夹File file13 new File(D:D:\\QQ);//存在的文件File file14 new File(D:\\QQ\\QQ.txt);//不存在的文件File file15 new File(D:D:\\QQ\\QQQQQQ.txt);String absolutePath1 file13.getAbsolutePath();String absolutePath2 file14.getAbsolutePath();String absolutePath3 file15.getAbsolutePath();System.out.println(file13 文件的绝对路径是 absolutePath1); //D:\JavaCode\code\D:\QQSystem.out.println(file14 文件的绝对路径是 absolutePath2); //D:\QQ\QQ.txtSystem.out.println(file15 文件的绝对路径是 absolutePath3); //D:\JavaCode\code\D:\QQ\QQQQQQ.txtSystem.out.println();//6.public string getPath() : 返回定义文件时使用的路径System.out.println(6.public string getPath() : 返回定义文件时使用的路径);//存在的文件夹File file16 new File(D:D:\\QQ);//存在的文件File file17 new File(D:\\QQ\\QQ.txt);//不存在的文件File file18 new File(D:D:\\QQ\\QQQQQQ.txt);String path1 file16.getPath();String path2 file17.getPath();String path3 file18.getPath();System.out.println(file16 定义文件时使用的路径是 path1); //D:D:\QQSystem.out.println(file17 定义文件时使用的路径是 path2); //D:\QQ\QQ.txtSystem.out.println(file18 定义文件时使用的路径是 path3); //D:D:\QQ\QQQQQQ.txtSystem.out.println();//7.public string getName() : 返回文件的名称带后缀//细节1调用者是文件返回的是文件名后缀名、扩展名//细节2调用者是文件夹返回值是文件夹的名字System.out.println(7.public string getName() : 返回文件的名称带后缀);//存在的文件夹File file19 new File(D:D:\\QQ);//存在的文件File file20 new File(D:\\QQ\\QQ.txt);//不存在的文件File file21 new File(D:D:\\QQ\\QQQQQQ.txt);String name1 file19.getName();String name2 file20.getName();String name3 file21.getName();System.out.println(file19 文件的名称带后缀为 name1); //QQSystem.out.println(file20 文件的名称带后缀为 name2); //QQ.txtSystem.out.println(file21 文件的名称带后缀为 name3); //QQQQQQ.txtSystem.out.println();//8.public long lastModified() : 返回文件的最后修改时间(时间毫秒值)System.out.println(8.public long lastModified() : 返回文件的最后修改时间(时间毫秒值));//存在的文件夹File file22 new File(D:D:\\QQ);//存在的文件File file23 new File(D:\\QQ\\QQ.txt);//不存在的文件File file24 new File(D:D:\\QQ\\QQQQQQ.txt);long time1 file22.lastModified();long time2 file23.lastModified();long time3 file24.lastModified();System.out.println(file22 文件的最后修改时间(时间毫秒值)为 time1); //0System.out.println(file23 文件的最后修改时间(时间毫秒值)为 time2); //1707927977267System.out.println(file24 文件的最后修改时间(时间毫秒值)为 time3); //0/*//删除文件file1.delete();file2.delete();file3.delete();file4.delete();file5.delete();file6.delete();file7.delete();file8.delete();file9.delete();file10.delete();file11.delete();file12.delete();file13.delete();file14.delete();file15.delete();file16.delete();file17.delete();file18.delete();file19.delete();file20.delete();file21.delete();file22.delete();file23.delete();file24.delete();*/}
} 输出结果 1.public boolean isDirectory() : 判断此路径名表示的File是否为文件夹 2.public boolean isFile() : 判断此路径名表示的File是否为文件 3.public boolean exists() : 判断此路径名表示的File是否存在 4.public long length() : 返回文件的大小(字节数量) 5.public string getAbsolutePath() : 返回文件的绝对路径 6.public string getPath() : 返回定义文件时使用的路径 7.public string getName() : 返回文件的名称带后缀 8.public long lastModified() : 返回文件的最后修改时间(时间毫秒值)
3.2 创建、删除的方法
3.2.1 方法
方法名称说明public boolean createNewFile()创建一个新的空文件public boolean mkdir()创建单级文件夹public boolean mkdirs()创建多级文件夹public boolean delete()删除文件或空文件夹
注意 public boolean createNewFile() : 创建一个新的空的文件 细节1:如果当前路径表示的文件是不存在的则创建成功方法返回true 如果当前路径表示的文件是存在的则创建失败方法返回false 细节2:如果父级路径是不存在的那么方法会有常IOException 细节3:createNewFile方法创建的一定是文件如果路径中不包含后缀名则创建一个没有后缀的文件 public boolean mkdir() : 创建单级文件夹 细节1:windows当中路径是唯一的如果当前路径已经存在则创建失败返回false 细节2:mkdir方法只能创建单级文件夹无法创建多级文件夹。 public boolean mkdirs() : 创建多级文件夹 细节:既可以创建单级的又可以创建多级的文件夹 public boolean delete() : 删除文件、空文件夹 细节 如果删除的是文件则直接删除不走回收站。 如果删除的是空文件夹则直接删除不走回收站 如果删除的是有内容的文件夹则删除失败
3.2.2 代码示例
代码示例package text.text03;import java.io.File;
import java.io.IOException;/* File的常见成员方法创建、删除| 方法名称 | 说明 |
| ------------------------------ | -------------------- |
| public boolean createNewFile() | 创建一个新的空的文件 |
| public boolean mkdir() | 创建单级文件夹 |
| public boolean mkdirs() | 创建多级文件夹 |
| public boolean delete() | 删除文件、空文件夹 |注意
1.public boolean createNewFile() : 创建一个新的空的文件细节1:如果当前路径表示的文件是不存在的则创建成功方法返回true如果当前路径表示的文件是存在的则创建失败方法返回false细节2:如果父级路径是不存在的那么方法会有常IOException细节3:createNewFile方法创建的一定是文件如果路径中不包含后缀名则创建一个没有后缀的文件
2.public boolean mkdir() : 创建单级文件夹细节1:windows当中路径是唯一的如果当前路径已经存在则创建失败返回false细节2:mkdir方法只能创建单级文件夹无法创建多级文件夹。
3.public boolean mkdirs() : 创建多级文件夹细节:既可以创建单级的又可以创建多级的文件夹
4.public boolean delete() : 删除文件、空文件夹
细节:如果删除的是文件则直接删除不走回收站。如果删除的是空文件夹则直接删除不走回收站如果删除的是有内容的文件夹则删除失败*/
public class text03 {public static void main(String[] args) throws IOException {//1.public boolean createNewFile() : 创建一个新的空的文件//细节1:如果当前路径表示的文件是不存在的则创建成功方法返回true// 如果当前路径表示的文件是存在的则创建失败方法返回false//细节2:如果父级路径是不存在的那么方法会有常IOException//细节3:createNewFile方法创建的一定是文件如果路径中不包含后缀名则创建一个没有后缀的文件System.out.println(1.public boolean createNewFile() : 创建一个新的空的文件);//不存在的文件File file1 new File(D:\\WW);//存在的文件File file2 new File(D:\\QQ\\QQ.txt);boolean newFile1 file1.createNewFile();boolean newFile2 file2.createNewFile();System.out.println(file1 一个新的空的文件是否成功被创建 newFile1); //trueSystem.out.println(file2 一个新的空的文件是否成功被创建 newFile2); //falseSystem.out.println();//2.public boolean mkdir() : 创建单级文件夹//细节1:windows当中路径是唯一的如果当前路径已经存在则创建失败返回false//细节2:mkdir方法只能创建单级文件夹无法创建多级文件夹。System.out.println(2.public boolean mkdir() : 创建单级文件夹);//单级文件夹File file3 new File(D:\\MM);//多级文件夹File file4 new File(D:\\WW\\QQ\\LL);boolean mkdir1 file3.mkdir();boolean mkdir2 file4.mkdir();System.out.println(file3 单级文件夹是否成功被创建 mkdir1); //trueSystem.out.println(file4 单级文件夹是否成功被创建 mkdir2); //falseSystem.out.println();//3.public boolean mkdirs() : 创建多级文件夹//细节:既可以创建单级的又可以创建多级的文件夹System.out.println(3.public boolean mkdirs() : 创建多级文件夹);//单级文件夹File file5 new File(D:\\NN); //true//多级文件夹File file6 new File(D:\\QQ\\QQ); //trueboolean mkdirs1 file5.mkdirs();boolean mkdirs2 file6.mkdirs();System.out.println(file5 多级文件夹是否成功被创建 mkdirs1);System.out.println(file6 多级文件夹是否成功被创建 mkdirs2);System.out.println();//4.public boolean delete() : 删除文件、空文件夹//细节:如果删除的是文件则直接删除不走回收站。// 如果删除的是空文件夹则直接删除不走回收站// 如果删除的是有内容的文件夹则删除失败System.out.println(4.public boolean delete() : 删除文件、空文件夹);boolean delete1 file1.delete();boolean delete2 file2.delete();boolean delete3 file3.delete();boolean delete4 file4.delete();boolean delete5 file5.delete();boolean delete6 file6.delete();System.out.println(file1 是否成功被删除 delete1); //trueSystem.out.println(file2 是否成功被删除 delete2); //trueSystem.out.println(file3 是否成功被删除 delete3); //trueSystem.out.println(file4 是否成功被删除 delete4); //falseSystem.out.println(file5 是否成功被删除 delete5); //trueSystem.out.println(file6 是否成功被删除 delete6); //true}
} 输出结果
3.3 获取、遍历的方法
3.3.1 重点方法
3.3.1.1 方法
方法名称说明public File[] listFiles()返回一个 File 数组表示该 File 目录中的所有的子文件或目录的对象
作用获取文件夹里面的所有内容包括隐藏的文件或文件夹把所有的内容放到数组中返回
注意 细节1当调用者File表示的路径不存在时返回null 细节2当调用者File表示的路径是文件时返回nul 细节3当调用者File表示的路径是一个空文件夹时返回一个长度为0的数组 细节4当调用者File表示的路径是一个有内容的文件夹时将里面所有文件和文件夹的路径放在File数组中返回 细节5当调用者File表示的路径是一个有隐藏文件的文件夹时将里面所有文件和文件夹的路径放在File数组中返回包含隐藏文件 细节6当调用者File表示的路径是需要权限才能访问的文件夹时返回null
3.3.1.2 代码示例
代码示例 文件夹D:\QQpackage text.text03;import java.io.File;/*File的常见成员方法获取并遍历重点| 方法名称 | 说明 |
| --------------------------- | ------------------------------------------------------ |
| public File[] listFiles() | 返回一个File数组表示该File目录中的所有的子文件或目录 |作用获取文件夹里面的所有内容包括隐藏的文件或文件夹把所有的内容放到数组中返回注意细节1当调用者File表示的路径不存在时返回null细节2当调用者File表示的路径是文件时返回nul细节3当调用者File表示的路径是一个空文件夹时返回一个长度为0的数组细节4当调用者File表示的路径是一个有内容的文件夹时将里面所有文件和文件夹的路径放在File数组中返回细节5当调用者File表示的路径是一个有隐藏文件的文件夹时将里面所有文件和文件夹的路径放在File数组中返回包含隐藏文件细节6当调用者File表示的路径是需要权限才能访问的文件夹时返回null文件夹D:\QQ*/
public class text04 {public static void main(String[] args) {//创建文件对象File file new File(D:\\QQ);//调用listFiles()方法//细节1当调用者File表示的路径不存在时返回null//细节2当调用者File表示的路径是文件时返回nul//细节3当调用者File表示的路径是一个空文件夹时返回一个长度为0的数组//细节4当调用者File表示的路径是一个有内容的文件夹时将里面所有文件和文件夹的路径放在File数组中返回//细节5当调用者File表示的路径是一个有隐藏文件的文件夹时将里面所有文件和文件夹的路径放在File数组中返回包含隐藏文件//细节6当调用者File表示的路径是需要权限才能访问的文件夹时返回nullFile[] files file.listFiles();//遍历File[]数组for (File f : files) {System.out.println(f);}}
} 输出结果
3.3.2 所有方法
3.3.2.1 方法
方法名称说明public static File[] listRoots()列出可用的文件系统根获取系统中所有的盘符public String[] list()获取当前路径下的所有内容的名称仅返回名称而不是完整路径public String[] list(FilenameFilter filter)获取当前路径下满足文件名过滤器条件的所有内容的名称public File[] listFiles()获取当前路径下的所有内容的 File 对象包括文件和文件夹public File[] listFiles(FileFilter filter)获取当前路径下满足文件过滤器条件的所有内容的 File 对象public File[] listFiles(FilenameFilter filter)获取当前路径下满足文件名过滤器条件的所有内容的 File 对象 FilenameFilter 是一个接口用于过滤文件名FileFilter 是一个接口用于过滤文件和文件夹。 注意
public string[] list(FilenameFilter filter) 利用文件名过滤器获取当前该路径下所有内容 细节1FilenameFilter是一个函数式接口里面重写的accept方法的形参依次表示该文件夹里面得到每一个文件或者文件夹的路径 参数一父级路径文件对象参数二子级路径返回值 如果返回值是true就表示当前路劲保留如果返回值是false就表示当前路径舍弃不要。
3.3.2.2 代码示例
代码示例 文件夹D:\QQpackage text.text03;import java.io.File;
import java.io.FileFilter;
import java.io.FilenameFilter;
import java.util.Arrays;/*File的常见成员方法(获取并遍历)所有| 方法名称 | 说明 |
| ---------------------------------------------- | ---------------------------------------- |
| public static File[] listRoots() | 列出可用的文件系统根(获取系统中所有的盘符) |
| public string[] list() | 获取当前该路径下所有内容(仅仅能获取名字) |
| public string[] list(FilenameFilter filter) | 利用文件名过滤器获取当前该路径下所有内容 |
| public File[] listFiles() | 获取当前该路径下所有内容 |
| public File[] listFiles(FileFilter filter) | 利用文件名过滤器获取当前该路径下所有内容 |
| public File[] listFiles(FilenameFilter filter) | 利用文件名过滤器获取当前该路径下所有内容 |注意1.public string[] list(FilenameFilter filter) 利用文件名过滤器获取当前该路径下所有内容细节1FilenameFilter是一个函数式接口里面重写的accept方法的形参依次表示该文件夹里面得到每一个文件或者文件夹的路径参数一父级路径文件对象参数二子级路径返回值如果返回值是true就表示当前路劲保留如果返回值是false就表示当前路径舍弃不要。文件夹D:\QQ*/
public class text05 {public static void main(String[] args) {//1.public static File[] listRoots() :列出可用的文件系统根(获取系统中所有的盘符)System.out.println(1.public static File[] listRoots() :列出可用的文件系统根(获取系统中所有的盘符));File[] files1 File.listRoots();System.out.println(系统中所有的盘符为 Arrays.toString(files1)); //[C:\, D:\]System.out.println();//2.public string[] list():获取当前该路径下所有内容(仅仅能获取名字)System.out.println(2.public string[] list():获取当前该路径下所有内容(仅仅能获取名字));File file1 new File(D:\\QQ);String[] list1 file1.list();System.out.println(file1 路径下所有内容为 Arrays.toString(list1));System.out.println();//3.public string[] list(FilenameFilter filter) :利用文件名过滤器获取当前该路径下所有内容System.out.println(3.public string[] list(FilenameFilter filter) :利用文件名过滤器获取当前该路径下所有内容);File file2 new File(D:\\QQ);//获取文件后缀为.txt的文件String[] list2 file2.list(new FilenameFilter() {Override//参数一父级路径文件对象//参数二子级路径//返回值如果返回值是true就表示当前路劲保留// 如果返回值是false就表示当前路径舍弃不要。public boolean accept(File dir, String name) {File file new File(dir, name);return file.isFile() file.getName().endsWith(.txt);}});System.out.println(file2 路径下所有文件后缀为.txt的文件为 Arrays.toString(list2)); //[QQ.txt, QQWhatsnew.txt]System.out.println();//4.public File[] listFiles() :获取当前该路径下所有内容System.out.println(4.public File[] listFiles() :获取当前该路径下所有内容);//重点内容在D:\JavaCode\code\codeText01\src\text\text03\text04.java中System.out.println();//5.public File[] listFiles(FileFilter filter):利用文件名过滤器获取当前该路径下所有内容System.out.println(5.public File[] listFiles(FileFilter filter):利用文件名过滤器获取当前该路径下所有内容);File file3 new File(D:\\QQ);//获取文件后缀为.txt的文件File[] files2 file3.listFiles(new FileFilter() {Overridepublic boolean accept(File pathname) {return pathname.isFile() pathname.getName().endsWith(.txt);}});System.out.println(file3 路径下所有文件后缀为.txt的文件为 Arrays.toString(files2)); //[D:\QQ\QQ.txt, D:\QQ\QQWhatsnew.txt]System.out.println();//6.public File[] listFiles(FilenameFilter filter):利用文件名过滤器获取当前该路径下所有内容System.out.println(6.public File[] listFiles(FilenameFilter filter):利用文件名过滤器获取当前该路径下所有内容);File file4 new File(D:\\QQ);//获取文件后缀为.txt的文件File[] files file4.listFiles(new FilenameFilter() {Overridepublic boolean accept(File dir, String name) {File file new File(dir, name);return file.isFile() file.getName().endsWith(.txt);}});System.out.println(file4 路径下所有文件后缀为.txt的文件为 Arrays.toString(files)); //[D:\QQ\QQ.txt, D:\QQ\QQWhatsnew.txt]}
} 输出结果
4. 注意事项 路径分隔符在不同的操作系统中路径分隔符可以是不同的。 例如在Windows系统中使用反斜杠\作为路径分隔符在Linux和Mac系统中使用正斜杠/作为路径分隔符。为了确保跨平台兼容性可以使用 File.separator 来代替硬编码的路径分隔符。 文件权限在进行文件操作时要注意文件的权限设置。确保你的程序具有足够的权限来读取、写入或执行文件。否则在运行时可能会出现 SecurityException 异常。 文件并发访问多个线程或多个程序同时对同一个文件进行并发读写可能导致数据损坏或不一致。在进行并发文件访问时需要采取适当的同步机制如使用锁或同步块来确保数据一致性。 文件路径有效性检查在创建或访问文件之前应始终进行路径有效性检查。可以使用 exists() 方法检查文件或目录是否存在以及 isDirectory() 和 isFile() 方法检查路径表示的是目录还是文件。 错误处理在文件操作过程中可能会发生许多异常情况如文件不存在、无法读取或写入文件等。确保在代码中适当地捕获和处理这些异常以提供适当的用户反馈或执行后续操作。