小编jmm*_*487的帖子

读取多个非常大的文件的最佳方法

我需要帮助找出最快的方法来读取每个文件中超过500,000行的大约80个文件,并写入一个主文件,每个输入文件的行作为主列中的列.必须将主文件写入文本编辑器(如记事本)而不是Microsoft产品,因为它们无法处理行数.

例如,主文件应如下所示:

File1_Row1,File2_Row1,File3_Row1,...

File1_Row2,File2_Row2,File3_Row2,...

File1_Row3,File2_Row3,File3_Row3,...
Run Code Online (Sandbox Code Playgroud)

等等

到目前为止,我尝试了2个解决方案:

  1. 创建一个锯齿状数组以将每个文件的内容保存到一个数组中,然后一旦读取所有文件中的所有行,就编写主文件.此解决方案的问题是Windows操作系统内存引发错误,即使用了太多的虚拟内存.
  2. 为读取特定行号的80个文件中的每个文件动态创建一个阅读器线程,一旦所有线程读完一行,将这些值组合并写入文件,并对所有文件中的每一行重复.这个解决方案的问题是它非常慢.

有没有人能够以更快的方式阅读这么多大文件?

c# performance file-io file text-files

3
推荐指数
1
解决办法
1590
查看次数

标签 统计

c# ×1

file ×1

file-io ×1

performance ×1

text-files ×1