想象我们有以下CSV文件
A,B,C
this is,"a badly" quoted, file
尝试使用clojure.data.csv/read-csv解析此文件时,我得到以下异常
{:type java.lang.Exception
:message "CSV error (unexpected character: )"
:at [clojure.data.csv$read_quoted_cell invokeStatic "csv.clj" 37]}
显然,此文件格式不正确,但我曾见过类似的文件,所以在read-csv中处理引号部分之后的多余内容将很有帮助
["this is" "a badly quoted" " file"]
此建议的潜在问题
如果在引号内部有分隔符,这将更难解释。例如
this is,"a, badly" quoted, file
可能被解析为
["this is" "a, badly quoted " " file"]
或者
["this is" "\"a" " badly\" quoted " " file"]
虽然第二种解释在我看来不太可能,但我不知道在这种情况下“尽最大努力”的解析策略是什么