java.io包的名为File的类表示系统中的文件或目录(路径名)。为了获得目录中所有现有文件的列表,此类提供了list()和ListFiles()方法。
它们之间的主要区别是
该列表()方法返回一个字符串数组的形式给定目录中的所有文件的名称。
在()ListFiles方法返回的文件的对象(文件)在给定的目录,在文件类型的阵列的形式。
即,如果只需要特定目录中文件的名称,则可以使用该list()
方法;如果需要目录中文件的详细信息(例如名称,路径等),则需要使用该ListFiles()
方法,检索所有文件,并通过调用相应方法获得所需的详细信息。
import java.io.File; import java.io.IOException; public class ListOfFiles { public static void main(String args[]) throws IOException { //为目录创建文件对象 File path = new File("D:\\ExampleDirectory"); //所有文件和目录的列表 String contents[] = path.list(); System.out.println("指定目录中的文件和目录列表:"); for(int i=0; i < contents.length; i++) { System.out.println(contents[i]); } } }
输出结果
指定目录中的文件和目录列表: SampleDirectory1 SampleDirectory2 SampleFile1.txt SampleFile2.txt SapmleFile3.txt
import java.io.File; import java.io.IOException; public class ListOfFiles { public static void main(String args[]) throws IOException { //为目录创建文件对象 File path = new File("D:\\ExampleDirectory"); //所有文件和目录的列表 File files [] = path.listFiles(); System.out.println("指定目录中的文件和目录列表:"); for(File file : files) { System.out.println("File name: "+file.getName()); System.out.println("File path: "+file.getAbsolutePath()); System.out.println(" "); } } }
输出结果
指定目录中的文件和目录列表: File name: SampleDirectory1 File path: D:\ExampleDirectory\SampleDirectory1 File name: SampleDirectory2 File path: D:\ExampleDirectory\SampleDirectory2 File name: SampleFile1.txt File path: D:\ExampleDirectory\SampleFile1.txt File name: SampleFile2.txt File path: D:\ExampleDirectory\SampleFile2.txt File name: SapmleFile3.txt File path: D:\ExampleDirectory\SapmleFile3.txt