输入目录和文件扩展名,输出符合扩展名的文件,大小写 忽略,如 png , PNG 。如果输 入空或者*代表列出全部文件。
时间: 2023-03-24 10:03:08 浏览: 190
好的,这是一个关于文件操作的问题。可以使用 C 语言中的 dirent.h 和 string.h 库来实现。首先需要打开目录,然后遍历目录下的所有文件,判断文件名是否符合要求,如果符合则输出文件名。可以使用 strcmp 函数来比较文件名和扩展名是否相同,使用 strcasecmp 函数来忽略大小写。如果输入为空或者为 *,则列出全部文件。
相关问题
1.输入目录和文件扩展名,输出符合扩展名的文件,大小写忽略,如png,PNG。如果输入空或者*代表列出全部文件。
好的,这是一个关于文件操作的问题。可以使用C语言中的文件操作函数来实现。首先需要使用opendir函数打开目录,然后使用readdir函数读取目录中的文件,判断文件的扩展名是否符合要求,如果符合则输出文件名。可以使用stricmp函数来忽略大小写比较扩展名。如果输入为空或者*,则列出全部文件。
写一段java代码,输入目录和文件扩展名,输出符合扩展名的文件,大小写忽略,如png,PNG 。如果输入空或者*代表列出全部文件。
好的,以下是符合您要求的 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 *
阅读全文