Spring 批处理 - FlatFileParseException(用双引号记录)

Spring Batch - FlatFileParseException (record with double quotes)

我在字段值之间用双引号引起来的记录很少。

所以当我使用 FlatFileItemReader 时,它会为这些记录抛出 FlatFileParseException。

样本记录是:

7^A3989815^A2400284298^ABU^AA" - CLEANING INC.^A$

我们如何处理 Spring 批量项目阅读器中的此类记录?

此致, 香卡

您可以将默认引号字符更改为您确定不会按建议出现的内容 here。我们遇到了类似的问题,并按照建议将其更改为 @ 并且它有效,但这会带来潜在的新问题,如果出现 @ 它将中断。

其他解决方案是覆盖 DelimitedLineTokenizer 并始终 return false 来自方法 isQuoteCharacter 所提议的 here,这是 IMO 更好的解决方案。