如何在 C# 中修改 11GB 的 .csv 文件? [关闭]

Posted

技术标签:

【中文标题】如何在 C# 中修改 11GB 的 .csv 文件? [关闭]【英文标题】:How can I modify a 11GB .csv file in C#? [closed] 【发布时间】:2017-03-06 15:18:12 【问题描述】:

我有一个 1500 万行的 .csv 文件。它包括一些只有连字符的行。但不可能用 excel、notepad 或 notepad++ 打开这个文件。因此我想在 C# 中修改它(首先读入,而不是写成一个新的修改文件,其中没有创建连字符行)。

如何以最简单的方式编写代码?

【问题讨论】:

msdn.microsoft.com/en-us/library/aa287535(v=vs.71).aspx 为什么会有1500万行的csv文件?你希望谁来理解这一点? 好的,这取决于您要如何修改它,但是您可以逐行读取任何文件,然后写出一个新文件……然后将其移到旧文件的位置。 有一些用于打开 CSV 文件的库(如 joshclose.github.io/CsvHelper)...您必须逐行进行,并且需要很大的耐心和 SSD 磁盘 :-) 显然,您甚至可以简单地将它作为文本文件逐行读取(最后你想简单地重写它减去一些行) 查看这篇文章 ► Reading large text files with streams in C# 下面的答案之一显示了他们使用什么来处理 19GB 文件。 【参考方案1】:

考虑将 CSV 文件迁移到 SQL 数据库,将其导入,然后删除有问题的列。 CSV 并不是一个真正有效的解决方案

【讨论】:

请注意,如果您坚持使用平面文件,则在完成后始终可以导出回 CSV 如果你真的想努力并继续使用 CSV,这里有一个 Python 模块:docs.python.org/2/library/csv.html

以上是关于如何在 C# 中修改 11GB 的 .csv 文件? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 C# 处理 CSV 文件中的换行符?

如何在 C# 中使用 CSV 帮助器解析 TSV 文件?

C#如何从url下载csv文件[重复]

如何使用 Object c# .NET Core 在 blob 存储 Azure 上创建 csv 文件?

如何从 300GB 文件中提取一列到另一个文件

如何操作一个巨大的 csv 文件(> 12GB)?