起初这似乎很明显,但现在我不太确定.
如果CSV文件包含以下行:
a,
Run Code Online (Sandbox Code Playgroud)
我会将其解释为具有值"a"和""的两个字段.但随后看着一条空行,我可以轻易地说它表示一个字段的值为"".
我接受文件末尾的空行应该被解释为文件的结尾(没有字段).但有没有人知道文件中的空行应该是什么意思?
纵观读取CSV文件时,Excel如何处理空行,我可以看到,Excel会不会忽略它们.
不幸的是,没有办法判断空行是否被视为空字段或根本没有字段,因为Excel总是具有相同的列数.
我看到了CSV格式的一些专有用途,其中有一个选项可以处理空行.最后,这是我采取的方法.我的CSV阅读器类有四个如何处理空行的选项:
如果有人有兴趣,我将发布新的源代码来替换现有的文章,用C#读取和写入CSV文件.
请注意,空行可能是多行引用字段的一部分:
1,2,"this
is
field number
3",4,5
Run Code Online (Sandbox Code Playgroud)
是有效的CSV.
在我见过的大多数CSV文件中,每行的字段数是常数(尽管不一定如此),所以除非CSV文件只有一列,否则我会期望空行(在引用字段之外)是个错误.
我刚检查过:Python的CSV解析器忽略了空行.我猜这是合理的.
| 归档时间: |
|
| 查看次数: |
6152 次 |
| 最近记录: |