Excel破坏CSV

我有一个从vb.net程序导出的CSV文件。 我有几个字段,我手动键入数据,然后重新保存CSV(从Excel)。 每当我从Excel保存CSV时,都会从每列中删除“”。 如何在不破坏CSV格式的情况下手动编辑CSV文件?

字段周围的引号不是强制性的,仅当字段包含特定字符时才需要。 因此,严格来说,该文件仍然是有效的CSV,并没有被破坏。

Excel会将整个CSV加载到内存中,完全忘记格式化并编写一个全新的文件。 我没有办法保持CSV文件的现有格式。

超级用户的这个线程链接到一些macros可能会帮助你。

CSV是纯文本文件(逗号分隔值),因此它们不需要任何特定的编辑器。

您可以使用Windows记事本完成这项工作,但其他高级编辑器将更容易使用(尝试使用NotePad ++,这将允许您保存以前的查找和replace命令)。

根据您的Excel版本,我认为您可以对其进行configuration,使其不会删除引号。

或者,您可以直接在Excel中添加引号,CSV输出将会有3个引号来分隔所有的字段,但这可能是解决您的问题的一种方法。

Excel不支持(afaik)详细说明如何将数据导出为CSV(例如,使用什么分隔符,编码等等)。 访问做。 所以,你可以做的是,首先将CSV文件导入到访问中,确保指定源文件中使用的分隔符/封装,然后使用Access的更高级的“导出到文本”方法将数据导出到文件所需的编码和封装。

您应该了解,正如@GolezTrol所述,Excel不会“打开”CSV文件。 它加载它们并使用默认设置将它们转换成Excel文件,并使用默认设置将它们导出到文件。 这些默认设置可能会导致数据损坏。 因此,您不应该使用Excel来编辑和保存数据,而应该只在使用导入方法时使用它来读取数据,而不是使用默认设置。

我已经写了一篇关于纯文本数据文件的常见问题和误解的深入文章,以及避免在使用这些文档时出现数据损坏的方法: http : //theonemanitdepartment.wordpress.com/2014/12/15/the-absolute-最小大家-工作与-数据绝对-正必知-有关文件types,编码分隔符和数据types,没有借口/