编程语言
首页 > 编程语言> > java-Spring Batch-FlatFileReader中是否可能有动态列?

java-Spring Batch-FlatFileReader中是否可能有动态列?

作者:互联网

我正在处理许多没有固定标题/列的CSV文件,说我可以获得10列的file1.csv和50列的file2.csv.

我无法事先知道将要拥有的列数,无法为每种文件类型创建特定的作业,我的输入将是一个黑匣子:一堆CSV,其列数为X 10至无限.

因为我想使用Spring Batch自动导入这些CSV,所以我想知道是否可行?我知道我必须获得固定数目的列,这是因为存在处理器,而且我需要在将数据发送回写程序之前将数据序列化为POJO.

我的处理器可以序列化一个阵列吗?除了发送一个简单的对象外,我还能得到一个对象数组,而在工作结束时,我会得到一个对象数组吗?

你怎么看?

谢谢

解决方法:

创建自己的LineTokenizer实现. DelimitedLineTokenizer需要预定义的列数.如果您自己创建,则可以根据需要进行动态调整.您可以在以下文档中了解有关LineTokenizer的更多信息:http://docs.spring.io/spring-batch/apidocs/org/springframework/batch/item/file/transform/LineTokenizer.html

标签:csv,spring-batch,spring,java
来源: https://codeday.me/bug/20191112/2023906.html