Java 中 list() 和 listFiles() 方法的区别
名为 File 的 java.io 包中的类表示系统中的文件或目录(路径名)。要获取目录中所有现有文件的列表,此类提供了 list() 和 listFiles() 方法。
它们之间的主要区别在于
list() 方法以字符串数组的形式返回给定目录中所有文件的文件名。
listFiles() 方法以 File 类型数组的形式返回给定目录中文件的对象 (File)。
即,如果您只需要特定目录中文件的名称,则可以使用 list() 方法;如果您需要目录中文件的详细信息(例如名称、路径等),则需要使用 listFiles() 方法,检索所有文件对象,并通过调用相应的方法获取所需的详细信息。
list() 方法示例
import java.io.File;
import java.io.IOException;
public class ListOfFiles {
public static void main(String args[]) throws IOException {
//Creating a File object for directory
File path = new File("D:\ExampleDirectory");
//List of all files and directories
String contents[] = path.list();
System.out.println("List of files and directories in the specified directory:");
for(int i=0; i < contents.length; i++) {
System.out.println(contents[i]);
}
}
}输出
List of files and directories in the specified directory: SampleDirectory1 SampleDirectory2 SampleFile1.txt SampleFile2.txt SapmleFile3.txt
listFiles() 方法示例
import java.io.File;
import java.io.IOException;
public class ListOfFiles {
public static void main(String args[]) throws IOException {
//Creating a File object for directory
File path = new File("D:\ExampleDirectory");
//List of all files and directories
File files [] = path.listFiles();
System.out.println("List of files and directories in the specified directory:");
for(File file : files) {
System.out.println("File name: "+file.getName());
System.out.println("File path: "+file.getAbsolutePath());
System.out.println(" ");
}
}
}输出
List of files and directories in the specified directory: 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
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP