Java实现一个在windows环境下的文件搜索引擎

以下是一个简单的Java实现的Windows文件搜索引擎的示例代码:

java 复制代码
import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class FileSearchEngine {

    public static void main(String[] args) {
        String searchDirectory = "C:/";  // 搜索的目录
        String searchQuery = "example.txt";  // 搜索的文件名或关键字

        List<String> results = searchFiles(searchDirectory, searchQuery);

        if (results.isEmpty()) {
            System.out.println("未找到匹配的文件.");
        } else {
            System.out.println("找到以下匹配文件:");
            for (String file : results) {
                System.out.println(file);
            }
        }
    }

    public static List<String> searchFiles(String directory, String searchQuery) {
        List<String> results = new ArrayList<>();

        File folder = new File(directory);
        File[] files = folder.listFiles();

        if (files != null) {
            for (File file : files) {
                if (file.isDirectory()) {
                    results.addAll(searchFiles(file.getAbsolutePath(), searchQuery));
                } else if (file.getName().toLowerCase().contains(searchQuery.toLowerCase())) {
                    results.add(file.getAbsolutePath());
                }
            }
        }

        return results;
    }

}

上述代码会在指定目录(searchDirectory)及其子目录中搜索指定文件名或关键字(searchQuery)。如果找到匹配的文件,将会打印出它们的绝对路径。

相关推荐
桃子是唯一的水果7 分钟前
java 单例模式(Lazy Initialization)实现遍历文件夹下所有excel文件且返回其运行时间
java·单例模式·maven
+7208 分钟前
如何在java中用httpclient实现rpc post 请求
java·开发语言·rpc
ybq1951334543110 分钟前
javaEE-SpringBoot日志
java·spring boot·后端
火烧屁屁啦14 分钟前
【JavaEE进阶】图书管理系统 - 贰
java·spring
xzzd_jokelin14 分钟前
Spring AI 接入 DeepSeek:开启智能应用的新篇章
java·人工智能·spring·ai·大模型·rag·deepseek
学习两年半的Javaer17 分钟前
Rust语言基础知识详解【一】
开发语言·rust
PyAIGCMaster18 分钟前
50周学习go语言:第四周 函数与错误处理深度解析
开发语言·学习·golang
全栈开发圈18 分钟前
新书速览|Rust汽车电子开发实践
开发语言·rust·汽车
PyAIGCMaster20 分钟前
第二周补充:Go语言中&取地址符与fmt函数详解
开发语言·后端·golang
刘什么洋啊Zz25 分钟前
剖析IO原理和零拷贝机制
java·运维·网络