Java Univocity-如何为“上的分隔符定义优先顺序”;格式自动检测“;?

Java Univocity-如何为“上的分隔符定义优先顺序”;格式自动检测“;?,java,csv,parsing,univocity,Java,Csv,Parsing,Univocity,我正在尝试使用Univocity解析此CSV表: HEADER1, HEADER2, HEADER3 11, 12, 13 21, 22, 23 31, 32, 33 正如您所看到的,有相同数量的逗号“,”和空格“。 问题是,查找分隔符的启发式方法优先使用“”而不是“”字符 因此,在本例中,检测到的分隔符是空间“”。然后,单元格的值是错误的,因为逗号是值的一部分: 我看到有一个按优先级顺序定义分隔符的功能,但我无法让它工作 我这样使用它:setDelimiterDetectionEnable

我正在尝试使用Univocity解析此CSV表:

HEADER1, HEADER2, HEADER3
11, 12, 13
21, 22, 23
31, 32, 33
正如您所看到的,有相同数量的逗号“,”和空格“。 问题是,查找分隔符的启发式方法优先使用“”而不是“”字符

因此,在本例中,检测到的分隔符是空间“”。然后,单元格的值是错误的,因为逗号是值的一部分:

我看到有一个按优先级顺序定义分隔符的功能,但我无法让它工作

我这样使用它:
setDelimiterDetectionEnabled(true,”,“”)
,但仍然选择空格作为分隔符

如果在CSV表中删除1个空格(因此逗号比空格多),则选择逗号作为分隔符

这段代码是scala,但我认为这与此无关,因为库是用java编写的:

val设置=新的CsvParserSettings
settings.setDelimiterDetectionEnabled(true、“”、“”)
val解析器=新的CsvParser(设置)
val spaceAndCommaTable=新文件(“/home/pr/SPACE_和_COMMA.csv”)
val parsed=parser.parseAll(spaceAndCommaTable,“UTF-8”)
val format=parser.getDetectedFormat

我希望format.getDelimiter是逗号“,”,但实际的分隔符是空格“”

这里是库的作者。我刚刚修复了这个问题,明天将发布最终版本2.8.3,其中包括使其正常工作所需的调整。对于测试,您已经可以使用最新的2.8.3-SNAPSHOT

多谢各位