CSV文件中空行的含义

Jon*_*ood 7 csv

起初这似乎很明显,但现在我不太确定.

如果CSV文件包含以下行:

a,
Run Code Online (Sandbox Code Playgroud)

我会将其解释为具有值"a"和""的两个字段.但随后看着一条空行,我可以轻易地说它表示一个字段的值为"".

我接受文件末尾的空行应该被解释为文件的结尾(没有字段).但有没有人知道文件中的空行应该是什么意思?

Jon*_*ood 7

纵观读取CSV文件时,Excel如何处理空行,我可以看到,Excel会不会忽略它们.

不幸的是,没有办法判断空行是否被视为空字段或根本没有字段,因为Excel总是具有相同的列数.

我看到了CSV格式的一些专有用途,其中有一个选项可以处理空行.最后,这是我采取的方法.我的CSV阅读器类有四个如何处理空行的选项:

  1. 忽略并跳过它们
  2. 将它们视为零字段的行
  3. 将它们视为具有一个空字段的行
  4. 将它们视为输入文件的末尾

如果有人有兴趣,我将发布新的源代码来替换现有的文章,用C#读取和写入CSV文件.


Tim*_*ker 6

请注意,空行可能是多行引用字段的一部分:

1,2,"this
is
field number

3",4,5
Run Code Online (Sandbox Code Playgroud)

是有效的CSV.

在我见过的大多数CSV文件中,每行的字段数是常数(尽管不一定如此),所以除非CSV文件只有一列,否则我会期望空行(在引用字段之外)是个错误.

我刚检查过:Python的CSV解析器忽略了空行.我猜这是合理的.

  • 是的,我同意引用字段中的空行表示文字空行.我更关心的是它不是引用字段的一部分. (2认同)