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

news/2024/12/15 11:49:45/

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

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


http://www.ppmy.cn/news/1275586.html

相关文章

刷题记录第五十一天-黑名单中的随机数

题目描述如下&#xff1a; 给定一个整数n和一个整数黑名单balcklist&#xff0c;目标是写一个随机函数&#xff0c;随机从(0,n-1)中选择一个不属于黑名单里的数&#xff0c;且每个数被取得的概率相同。 思路如下&#xff1a; 假设用rand()函数从[ 0,n-balcklist.size() )中随机…

Ubuntu18.04 上通过 jihu 镜像完成 ESP-IDF 编译环境搭建流程

为了解决国内开发者从 github 克隆 esp 相关仓库慢的问题&#xff0c;已将 esp-idf 和部分重要仓库及其关联的子模块镜像到了 jihu&#xff0c;这些仓库将自动从原始仓库进行同步。此篇博客用来阐述 Ubuntu18.04 上通过 jihu 镜像完成 ESP-IDF 编译环境搭建流程。 注&#xff1…

VSCode报错插件Error lens

1.点击左侧扩展图标→搜索“error lens”→点击“安装” 2.安装成功页面如下&#xff1a; 3.代码测试一下&#xff1a;书写代码的过程中会出现红色提醒或红色报错 4.另外推荐小伙伴们安装中文插件&#xff0c;学习过程中会比较实用方便&#xff0c;需要安装中文插件的小伙伴请点…

使用k8s部署Mysql实例~hostpath,nfs服务器,PV和PVC持久化

1.k8s数据存储的分类&#xff1a; 1.基础存储的分类&#xff1a; 分类说明EmptyDirEmptyDir是在Pod被分配到Node时创建的&#xff0c;无须手动指定&#xff0c;当Pod销毁时&#xff0c; EmptyDir中的数据也会被永久删除HostPathHostPath就是将Node主机中一个实际目录挂载到Po…

将包上传到 npm

将包上传到 npm 1.注册一个 npm 账号2.初始化包目录3.登录 npm4.构建包5.发布包6.注意事项 1.注册一个 npm 账号 在https://www.npmjs.com 上注册一个npm账号 2.初始化包目录 npm init这将引导你完成一些设置&#xff0c;如包名称、版本、描述等。按照提示输入相关信息。中间…

12 v-if指令

概述 v-if指令主要用来实现条件渲染&#xff0c;在实际项目中使用得也非常多。 v-if通常会配合v-else-if、v-else指令一起使用&#xff0c;可以达到多个条件执行一个&#xff0c;两个条件执行一个&#xff0c;满足一个条件执行等多种场景。 下面&#xff0c;我们分别演示这三…

Java实现Word中插入上标和下标

Java实现Word中插入上标和下标 Java不能直接在Word中插入上标和下标&#xff0c;但是可以通过POI库来实现。 下面提供一个Java代码示例&#xff0c;使用POI库向Word中插入带有上标和下标的文字&#xff1a; import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.…

K8s攻击案例:RBAC配置不当导致集群接管

01、概述 Service Account本质是服务账号&#xff0c;是Pod连接K8s集群的凭证。在默认情况下&#xff0c;系统会为创建的Pod提供一个默认的Service Account&#xff0c;用户也可以自定义Service Account&#xff0c;与Service Account关联的凭证会自动挂载到Pod的文件系统中。 …