百度360必应搜狗淘宝本站头条
当前位置:网站首页 > SEO教程 > 正文

文档关键字搜索工具 搜索文档里的关键字

gaoyangw 2024-10-26 09:56 14 浏览 0 评论

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

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

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

实现功能:

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

开发环境:

开发工具: 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[] { "\r\n" }, 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文件。

由简入繁,拿来即用

后续精彩,持续关注

相关推荐

网站托管维护都包含哪些内容?(网站托管服务)

现在很多企业会建立自己的网站,开启网络营销新模式,并且也逐渐培养起自己专门的营销型网站。但是如果企业没有专业的技术人才,这个时候就要考虑将企业网站托管到某个专业负责网站托管维护和营销的公司,托管公司主...

网站建设完成后,如何进行后期维护

在这个互联网时代,每个公司都希望能够拥有自己的网站,利用网站可以给公司带来盈利。但是在建站之前,除了需要完善的网站建设计划之外,还要有明确的目标和网站的功能维护等。今天八爪网就来教大家网站建设完成后,...

网站系统维护公告(网站系统维护公告范文)

因网站机房网络设备停机升级维护,4月20日凌晨0点至5点,胶东在线网站有关服务暂时受到影响,因本次升级维护给您造成的不便,敬请谅解。胶东在线网站4月19日...

网站后期维护方面也是有规律和技巧的

网站做好后肯定缺不了后期的细心维护,维护的好网站效果就好,反之就会失去很多商机。可是,有多少朋友知道网站维护的一些规律和技巧呢。下面小编就把自己积累的一些经验拿出来大家一起分享下。首页做好网站内容的及...

韩国总统办公室网站暂停运营显示“正在维护”

在尹锡悦被罢免后,韩国总统办公室网站目前已暂停运营。该网站显示,由于“正在维护”,相关服务“暂时不可使用”,并对造成的不便向公众表示歉意。(环球网)...

韩国总统办公室网站暂停运营,显示“正在维护”

来源:界面新闻4月5日消息,韩国总统办公室网站目前处于暂停运营状态。该网站显示,由于“正在维护”,相关服务“暂时不可使用”,并对造成的不便向公众表示歉意。...

“网站维护”知多少(网站维护怎么操作)

“休息~休息一下,抱歉!因为某某网站所在的服务器出了点问题,我们正在处理,所以网站暂时无法打开,谢谢大家的理解!”看到这个熟悉的提示语,小编想很多人都会有拍电脑的冲动吧。一个故障的网页,对于企业来说不...

韩国总统办公室网站暂停运营 显示“正在维护”

【韩国总统办公室网站暂停运营显示“正在维护”】财联社4月5日电,据韩联社5日报道,在尹锡悦被罢免后,韩国总统办公室网站目前已暂停运营。该网站显示,由于“正在维护”,相关服务“暂时不可使用”,并对造成...

首次维护网站指南,了解一下?(维护网站用什么软件)

很多时候我们登录网站时显示网站维护...

PC网站建设与维护要点:从目标到实施

在当下这个信息化的时代,个人和企业都离不开PC网站。一个网站的建设与保养得当,不仅能增加访问量,还能塑造正面形象。接下来,我将从几个重要角度逐一阐述PC网站建设与维护的要点。明确建设目标在着手构建P...

跨屏互联日常网站维护都包含哪些内容?

文章导读:本文主要阐述了“...

网站维护进不去怎么办(网站维护中是不是关了)

当遇到网站无法访问并显示维护提示时,可能是临时维护,也可能存在其他故障。以下提供系统的排查步骤与解决方法,助你快速定位问题并解决。一、判断网站是否处于真实维护状态1.官方渠道信息核查公告查询:访问网...

借“免费网课”向学生推广网游?!这些平台回应了!

间沉迷网游,甚至是高额网络消费的情况。记者调查发现,虎牙、斗鱼等网络平台利用免费提供的上网课渠道,向未成年人推广网络游戏。8日晚,虎牙等涉事平台回应,已下架相关广告。孩子上网课时买游戏装备和打赏花了...

借“免费网课”向学生推广网游?涉事平台回应:已下架

在过去的这个假期里,上网课是学生们学习的主要方式,但也出现了不少未成年人在网课期间沉迷网游,甚至是高额网络消费的情况。记者调查发现,虎牙、斗鱼等网络平台利用免费提供的上网课渠道,向未成年人推广网络游戏...

借“免费网课”向学生推广网游?这些平台回应了!

导读在过去的这个假期里,上网课是学生们学习的主要方式,但也出现了不少未成年人在网课期间沉迷网游,甚至还有高额网络消费的情况。记者调查发现,虎牙、斗鱼等网络平台利用免费提供的上网课渠道,向未成年人推广网...

取消回复欢迎 发表评论: