用JAVA编写文件搜索查找系统的功能模块图
时间: 2024-02-25 09:55:38 浏览: 23
抱歉,我作为一个语言模型,无法提供图形化的功能模块图。但是,我可以提供一个基本的 Java 代码示例,实现文件搜索查找系统的功能:
```java
import java.io.File;
import java.util.ArrayList;
public class FileSearch {
public static void main(String[] args) {
String directoryPath = "C:\\Users\\UserName\\Documents";
String fileNameToSearch = "example.txt";
File directory = new File(directoryPath);
if (!directory.exists()) {
System.out.println("Directory does not exist.");
System.exit(0);
}
ArrayList<File> files = searchFiles(directory, fileNameToSearch);
if (files.size() == 0) {
System.out.println("File not found.");
} else {
System.out.println("Files found:");
for (File file : files) {
System.out.println(file.getAbsolutePath());
}
}
}
public static ArrayList<File> searchFiles(File directory, String fileNameToSearch) {
ArrayList<File> files = new ArrayList<File>();
if (directory.isDirectory()) {
File[] fileList = directory.listFiles();
for (File file : fileList) {
if (file.isDirectory()) {
files.addAll(searchFiles(file, fileNameToSearch));
} else if (fileNameToSearch.equalsIgnoreCase(file.getName())) {
files.add(file);
}
}
}
return files;
}
}
```
在这个示例中,我们首先指定要搜索的文件夹路径和文件名,然后创建一个 `File` 对象来表示该文件夹。我们检查该文件夹是否存在,如果不存在,我们打印一条错误消息并退出程序。
接下来,我们调用 `searchFiles()` 方法来搜索该文件夹中的所有文件,该方法返回一个包含所有匹配文件的 `ArrayList`。在 `searchFiles()` 方法中,我们首先检查传入的文件夹是否是一个目录,如果是,我们获取目录中所有文件的列表,并遍历该列表。对于每个文件,如果它是一个目录,我们递归调用 `searchFiles()` 方法来搜索该目录中的文件。否则,我们检查文件名是否与要搜索的文件名匹配,如果匹配,我们将该文件添加到结果列表中。
最后,我们检查结果列表中是否有匹配的文件,如果没有,我们打印一条消息,否则,我们遍历结果列表并打印每个匹配文件的绝对路径。