我有一个包含 3000 个 csv 文件的文件夹,大小从 1Kb 到 100kb 不等。这些文件中的每一行都是 43 个字符长。它们的总大小为 171Mb。
我正在尝试编写一个程序来尽可能快地解析这些文件。
我最初尝试了自己的实现,但对这些结果并不满意。然后我在 StackOverflow 上找到了 LumenWorks.Framework.IO.Csv。它有大胆的主张:
为了提供更实际的数字,使用包含 145 个字段和 50,000 条记录的 45 MB CSV 文件,阅读器的处理速度约为 30 MB/秒。所以总而言之,花了1.5秒!机器规格为 P4 3.0 GHz,1024 MB。
我根本没有得到接近这些结果的任何东西。我的过程需要 >>10 分钟。这是因为它不是一个大流,而是很多小文件并且那里有开销?还有什么我可以做的吗?
我觉得 LumenWorks 的实现并不比我自己的快(我没有进行基准测试),更不用说它处理引号、转义、注释和多行字段,我不需要这些。我有一个非常规则的逗号分隔整数格式。
干杯