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)。如果找到匹配的文件,将会打印出它们的绝对路径。

相关推荐
wuyaolong0072 分钟前
Spring Boot 3.4 正式发布,结构化日志!
java·spring boot·后端
hua872229 分钟前
Golang 构建学习
java·开发语言·学习
2301_803554529 分钟前
qt信号槽机制以及底层实现原理
开发语言·qt
大傻^10 分钟前
LangChain4j RAG 核心:Document、Embedding 与向量存储抽象
开发语言·人工智能·python·embedding·langchain4j
笨笨马甲10 分钟前
Qt 音视频编解码
开发语言·qt
Halo_tjn15 分钟前
Java 三个修饰符 相关知识点
java·开发语言
毕设源码-朱学姐16 分钟前
【开题答辩全过程】以 广东省非遗文化信息管理系统的设计与实现为例,包含答辩的问题和答案
java
2401_8830354621 分钟前
C++20概念(Concepts)入门指南
开发语言·c++·算法
番茄去哪了27 分钟前
Java基础面试题day01
java·开发语言·后端·javase·八股·面向对象编程
遇事不决问清风32 分钟前
AI 驱动开发实战复盘:从 0 到上线,一个真实项目的工程化总结
java·ai编程