使用spring-batch读取文本文件,其中记录的长度不同,即不是固定长度



我有一个文本文件,其记录如下

姓名(1-3(,年龄(4-5(,自己的车(6((如果已将Y留空(

数据样本:

Dom32Y

Pat22

Sam23

Rob45Y

因此,如果你看到每条记录的大小都不是固定长度的。。那么,我如何使用SpringBatch读取这个文本文件呢。现在我正在使用FixedLengthTokenizer读取这个文件,但我收到了错误";由以下原因引起:org.springframework.batch.item.file.transform.InterrectLineLengthException">

我是Spring Batch和Java Config的新手。如果有人能帮我为我的问题写一个解决方案,我真的很感激!

默认情况下,FixedLengthTokenizerstrict模式下工作,这意味着它不会容忍令牌多于或少于预期的行。您可以通过将strict标志设置为false来放松这一点,其行为如下:

If false then lines with less tokens will be tolerated and padded with empty columns,
and lines with more tokens will simply be truncated.

如果这不是您想要的,您可以覆盖FixedLengthTokenizer#doTokenize并提供您的自定义逻辑。

相关内容

  • 没有找到相关文章

最新更新