文档关键字搜索工具(文档关键字搜索工具在哪)

前面写了几篇关于文件流的文章,今天来写个简单的小工具,即:文档关键字的搜索工具;也是运用了文件流来读取并匹配关键字;

这东西吧,网上或许应该有很多,但是用的时候却总是找不到,找的时候也无从下手,有花大时间找的过程,自己都可以手动完成了…毕竟这东西也不是经常需要。

我这个也是因为前几天在工作中有这个需求,需要在本地的很多文件中寻找是否包含某些个关键字,并进行关键字替换。百度了两分钟,无果,就自己写了,这里发出来的版本稍微做了些人性化优化。

文档关键字搜索工具(文档关键字搜索工具在哪)

实现功能:

    • 对本地大量文本文件进行关键字搜索
    • 将搜索结果显示到页面上

开发环境:

开发工具: Visual Studio 2013

.NET Framework版本:4.5

关键代码:

//数据源模型 private class BindModel { public string FileName { get; set; } public string FilePath { get; set; } public string Keys { get; set; } public string Operate { get { return "打开目录"; } } } //搜索等待提示 Font f = new Font("宋体", 14, FontStyle.Bold); Rectangle r = new Rectangle(dataGridView1.Width / 2 - 100, dataGridView1.Height / 2, 160, 20); dataGridView1.CreateGraphics().DrawString("正在检测,请稍等。。。", f, Brushes.Red, r); List<string> keys = txtKeys.Text.Split(new string[] { "rn" }, StringSplitOptions.RemoveEmptyEntries).ToList(); DirectoryInfo di = new DirectoryInfo(txtFolder.Text); //查找所有符合条件的文档 FileInfo[] fis = di.GetFiles(txtFile.Text, SearchOption.AllDirectories); BindingList<BindModel> listData = new BindingList<BindModel>(); //循环查找 foreach (FileInfo fi in fis) { using (StreamReader sr = new StreamReader(fi.FullName)) { string text = sr.ReadToEnd(); IEnumerable<string> list = keys.Where(s => cbCap.Checked ? text.ToLower().Contains(s.ToLower()) : text.Contains(s)); if (list.Count() > 0) { BindModel model = new BindModel { FileName = fi.Name, FilePath = fi.FullName, Keys = string.Join(",", list) }; listData.Add(model); } } } //绑定数据到页面 dataGridView1.DataSource = listData;

最终实现效果:

文档关键字搜索工具(文档关键字搜索工具在哪)

写程序这件事吧,要么是工作所需,要么是可以替代自己完成生活中的一些重复而又繁琐的事,学以致用,偶尔给自己一些小确幸;单纯地为了工作而成为一个实实在在的码农,没有了思想,没有了目标,着实无趣。

这里不允许放链接,我就直接把所有代码放到网盘了,下载下来可以直接运行;私信我发送:文档关键字搜索工具 获取链接地址,若是不需要看代码,可以直接在Debug文件夹中运行exe文件。

由简入繁,拿来即用

后续精彩,持续关注

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年4月28日 上午10:30
下一篇 2023年4月28日 上午10:46

相关推荐

  • 适合机电企业管理的项目管理软件!企智汇机电项目管理软件!(机电工程项目管理软件)

    适合机电企业管理的项目管理软件!企智汇机电项目管理软件!(机电工程项目管理软件) 企智汇项目管理软件是一款适合机电企业管理的项目管理软件。它集多种功能于一体,包括项目计划管理、进度…

    科研百科 2024年3月28日
    125
  • 教育科研 – 手把手教你撰写课题结题报告(研究报告)超详细,有范例

    教育科研 | 手把手教你撰写课题结题报告(研究报告)–超详细,有范例 文章‬来源‬:悦教研共同体 对于一个科研课题来说,撰写结题报告是课题研究的最后一个程序。很多人把结…

    科研百科 2024年4月13日
    60
  • 好轻产品体验报告|一位深巷里的体重管理专家

    编辑导语:随着消费方式的变化,现在不少用户都会结合线上运动健康APP来进行健康管理,或者结合APP做好运动记录。那么,运动健康赛道上的APP们,在产品功能、用户体验上有哪些可以拆解…

    科研百科 2022年7月17日
    232
  • 2022年11款最佳 ERP 软件(erp软件排行榜)

    2022年11款最佳 ERP 软件(erp软件排行榜) 所有公司都有孤岛。每个业务单元独立工作,部门之间的信息顺畅传递具有挑战性。不正确的企业资源规划会导致宝贵时间的浪费、缺乏协作…

    科研百科 2024年3月28日
    126
  • 科研经费管理规定设备购置(科研经费使用管理规定)

    科研经费使用管理规定科研经费使用管理规定国开数据显示,6%的高校在校生共有三成以上的市、自治区及直辖市和安徽、自治区等。其中,被关省属高校具有学科全面发展的有18个省市,学校本科专…

    科研百科 2024年5月19日
    94
  • 抓联动 建机制 促发展 扶绥县地税“三个坚持”抓党建

    扶绥讯 扶绥县地税局坚持以抓联动、建机制、促发展的工作思路,全力抓好党建促发展,有效激发了广大党员干部干事创业的激情和活力,有力地推动了地税事业的发展。近年来,该局先后荣获自治区文…

    科研百科 2023年9月14日
    138
  • 青岛市重点项目管理系统

    青岛市重点项目管理系统: 推动重点项目建设加速发展 随着城市化进程的不断加快,青岛市重点项目建设面临着前所未有的机遇和挑战。为了推进重点项目建设,青岛市政府制定了一系列的政策和措施…

    科研百科 2024年12月13日
    0
  • crm+OA+erp

    企业信息化解决方案:CRM、OA和ERP的综合运用 随着信息技术的不断发展,企业信息化已经成为现代企业运营的必要手段。在这个信息化时代,企业需要一款强大的企业信息化解决方案来支持企…

    科研百科 2024年9月30日
    22
  • 医院合同管理方案

    医院合同管理方案 医院合同管理是指对医院之间的合同进行有效的管理和监管,以确保合同的有效性和合法性,并确保医院在遵守合同规定的同时实现其目标和利益。医院合同管理对于医院的运营和发展…

    科研百科 2024年9月18日
    30
  • 安琪协同办公系统

    安琪协同办公系统: 提高团队协作效率 安琪协同办公系统是一款功能强大的办公软件,可以帮助企业提高团队协作效率。该系统提供了多种协作工具,例如会议、日程安排、文档共享、邮件管理等,可…

    科研百科 2024年9月21日
    27