在大多数情况下,CSV文件是带有逗号分隔的记录的文本文件.但是,有时这些文件将以分号分隔.(如果区域设置将小数分隔符设置为逗号,Excel将在保存CSV时使用分号分隔符 - 这在欧洲很常见.参考:http: //en.wikipedia.org/wiki/Comma-separated_values#Application_support)
我的问题是,让程序猜测是将逗号分隔还是以分号分隔的最佳方法是什么?
例如,像1,1; 1,1的线可能是模糊的.它可以解释为逗号分隔为:1 1; 1(字符串)1
或分号分隔为1,1 1,1
到目前为止,我最好的猜测是尝试使用和解析文件; 分隔符,然后选择具有与第一行相同长度的行的解析(通常是标题行).如果两者具有相同的行数,请选择具有更多列的行.这样做的主要缺点是额外的开销.
思考?