csv - 缺少前导引号的 CSV 数据是否被视为格式错误?

标签 csv opencsv

我正在使用OpenCSV读取 CSV 文件。查看文档,我没有看到有关如何处理格式错误的数据的指南。

我有一个 CSV 文件。具有所有预期的功能:每个字段都用逗号分隔,并且每个字段都用引号引起来,以防其中一个值可能包含逗号。但是,每一行(标题除外)都缺少前导引号。这是一个例子

"Header 1","Header2"
value1","value2"
value1","value2"

由于引号的排列方式,CSV 解析器最终跳过了每隔一行,这显然会导致问题。

我认为这是一个错误,因为第一列缺少引号,因为我知道数据应该是什么样子,但就 CSV 规范而言,这可能被认为是有效的?如果是这样,我想我必须自己构建额外的检查,以确保我没有丢失任何行,尽管它包含有效的 CSV 数据。

最佳答案

根据rfc for CSV files :

While there are various specifications and implementations for the CSV format, there is no formal specification in existence, which allows for a wide variety of interpretations of CSV files.

简单地说,格式错误?不,非正式?偶数this文章(在 RFC 中链接)提到行可以与引号和不带引号混合匹配。

关于csv - 缺少前导引号的 CSV 数据是否被视为格式错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48410759/

相关文章:

python - 在python中将csv对象时间解析为日期时间

entity-framework - 使用 LINQ 搜索逗号分隔的字符串

java - 在将 CSV 字段导入数据库之前修改它们

java - Spark - 使用 OpenCSV 解析文件的序列化问题

java - 如何从带注释的 java 类编写/生成 CSV 文件

java - Android 中的 CSV 文件无法写入?

OPENCSV 将第一列填充为空

python - 清理 CSV——开始新行

java - Android openCSV,文件出现 - 但不会写入任何内容

python - csv中的 "Inf"是什么意思?