LWZ*_*LWZ 6 csv microsoft-excel
我有一些看起来像这样的 csv 数据文件
1,2,3
5,6,7
Run Code Online (Sandbox Code Playgroud)
我用 Excel 2010 打开它,做一些更改(更改一些值、删除列或任何内容),然后将文件重新保存为 csv。但是现在数据变成了
1,2,3
,,
5,6,7
Run Code Online (Sandbox Code Playgroud)
中间的空行现在被一行用逗号分隔的空字段填充。我知道在这个例子中这并没有太大的不同,但是当我有代码来处理这两种不同的格式时,它真的很烦人。有没有办法阻止 Excel 更改格式?或者有没有其他程序可以轻松编辑 csv 文件?
CSV 文件中的空行意味着它不符合大多数\xe2\x80\x94(如果不是所有\xe2\x80\x94CSV 实现)中使用的语法。您可以在RFC 4180中阅读相关内容:
\n\n\n整个文件中的每一行应包含相同数量的字段。
\n
Excel 输出的实际上是空白行的正确表示,因为 CSV 文件始终具有相同的列数。您将无法使用其他 CSV 编辑器,因为它们要么输出标准化的 CSV 格式,要么甚至可能无法正确读取您的文件。他们可能会跳过空行,或者像 Excel 一样输出它。
\n以下是一些可能的解决方案:
\n您无法更改 Excel 保存 CSV 文件的方式。如果您想打破轮子上的蝴蝶,您需要编写 VBA 代码来手动导出文件。
\n更改原始 CSV 文件,使其不包含空白行。
\n如果您需要空白行来标识不连续的数据或单独的表,请考虑为每个部分创建单独的 CSV 文件,或将表标识符设置为 CSV 中的另一列以获得正确的表格表示形式。
\n更改您的代码以使用 Excel 的表示形式,从而遵循为 CSV 制定的标准。只需将具有空字段的行视为空即可。
\n在任何纯文本编辑器(记事本等)中修改 CSV 文件以删除有问题的行。
\n