VS实现文件的快速搜索

本文介绍了如何在VS2013环境下实现一个类似Everything的快速文件搜索功能,支持模糊匹配和高亮显示。利用SQLite数据库存储文件信息,通过遍历文件夹并实时更新数据库,实现拼音和拼音首字母搜索。搜索模块的关键在于汉字、拼音和首字母的高亮处理,确保了搜索的效率和用户体验。
摘要由CSDN通过智能技术生成

在VS2013下模拟实现了类似Everything的文件快速搜索功能,支持模糊匹配,高亮显示搜索部分。

1、首先在linux下有find命令,找一个文件是非常快的。

2、在windows下,查找是比较慢的,可以说是很慢的了,所以就想自己实现一个

3、使用everything搜索,效率很明显快乐很多

使用windows下的搜索是非常慢的,并且不支持拼音搜索和拼音首字母搜索。所以自己实现了一个有这些功能的快速搜索工具。用到了SQLite,是一个轻量级的数据库,因为安装在本地就可以工作,而MySQL是C-S模型的,还需要连接服务器,我们只是在本地进行搜索,不需要上传到服务器中,或者跨电脑搜索,没有必要。

实现流程:

                                                      

1、数据库的操作:打开数据库,建表,实行SQL语句。因为在结束搜索任务的时候,因为表是用到了单例模式,为了避免忘记释放操作数据表的对象,用了RAII的思想,智能管理表的释放(类似Unique_ptr)。

对于存储文件名和位置的表来说,实际在我们使用中只需要使用到一份表格,所以用到了单例模式(饿汉)。因为要支持拼音搜索和拼音首字母搜索,所以建表是就把文件的相关信息存到表中。

2、遍历指定文件夹:在这个文件夹下,有可能有文件和文件夹,所以需要两个容器来存储,遍历时需要注意,一个文件夹内默认包含了当前(.)和上一层(..),所以遇到不再遍历当前和上层,否则会有死循环。用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值