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

相关推荐
杨杨杨大侠19 小时前
Atlas Mapper 教程系列 (7/10):单元测试与集成测试
java·开源·github
叽哥19 小时前
Kotlin学习第 7 课:Kotlin 空安全:解决空指针问题的核心机制
android·java·kotlin
Florence2319 小时前
GPU硬件架构和配置的理解
开发语言
guslegend19 小时前
Java面试小册(3)
java
派葛穆19 小时前
Unity-按钮实现场景跳转
java·unity·游戏引擎
弥巷19 小时前
【Android】Viewpager2实现无限轮播图
java
李游Leo19 小时前
JavaScript事件机制与性能优化:防抖 / 节流 / 事件委托 / Passive Event Listeners 全解析
开发语言·javascript·性能优化
虫小宝19 小时前
返利app排行榜的缓存更新策略:基于过期时间与主动更新的混合方案
java·spring·缓存
SimonKing19 小时前
告别繁琐配置!Retrofit-Spring-Boot-Starter让HTTP调用更优雅
java·后端·程序员
召摇19 小时前
Spring Boot 内置工具类深度指南
java·spring boot