【发布时间】:2013-01-27 10:51:33
【问题描述】:
我需要使用 C# 在一组文本文件中搜索大约 13 个字符的字符串。文本文件的数量在变化,范围在 100-1000 之间。文件的大小可以在 1KB 到 10MB 之间。
我尝试了打开每个文件的幼稚方式,逐行读取并查看字符串是否存在(使用index.of),但这太慢了。我还尝试使用 Boyer-Moore 算法,该算法确实将时间缩短了 5 秒,但仍然感觉很慢。
关于如何加快搜索速度的任何想法?
【问题讨论】:
-
您的减速可能来自逐行读取文件。一次将文件全部读入内存并进行搜索。
-
是否需要多次搜索同一个文件?
标签: c# string search full-text-search