写一段java代码,输入目录和文件扩展名,输出符合扩展名的文件,大小写忽略,如png,PNG 。如果输入空或者*代表列出全部文件。
时间: 2023-03-24 18:04:58 浏览: 96
好的,以下是符合您要求的 Java 代码:
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class FileFilter {
public static void main(String[] args) {
String directory = args[];
String extension = args[1];
List<File> files = new ArrayList<>();
File dir = new File(directory);
if (dir.isDirectory()) {
File[] fileList = dir.listFiles();
for (File file : fileList) {
if (file.isFile()) {
String fileName = file.getName();
String fileExtension = fileName.substring(fileName.lastIndexOf(".") + 1);
if (extension.equals("*") || fileExtension.equalsIgnoreCase(extension)) {
files.add(file);
}
}
}
}
for (File file : files) {
System.out.println(file.getName());
}
}
}
您可以在命令行中输入目录和文件扩展名来运行此程序。例如,如果您想要列出目录 "/home/user/documents" 中所有扩展名为 "png" 或 "PNG" 的文件,您可以输入以下命令:
java FileFilter /home/user/documents png
如果您想要列出目录中所有文件,您可以输入以下命令:
java FileFilter /home/user/documents *