Spring Batch的一项常见任务是解析CSV文件,但是CSV文件具有各种形式和形状……其中有些在语法上不正确。我目前正在尝试解析无效的CSV文件: 我的CSV文件数据。CSV:
<suite name="Suite">
<test thread-count="5" name="Test">
<parameter name="url" value="https://www.google.com/"/>
<parameter name="browser" value= "Chrome" />
我使用了这段代码here。 这对我有用,但我想使用自己的CSV!有什么建议吗?
答案 0 :(得分:1)
正如我在您的链接的答案评论中所说,您可以使用FlatFileItemReader
代替ListItemReader
,它应该可以工作。我使用ListItemReader
是为了提供一个可以运行的自包含示例(无需上传CSV文件等)。另一个问题的重点是如何在解析行之前修剪前导/后退"
,而诀窍是使用示例中所示的复合项目处理器。
您无需创建新的阅读器,这是一个FlatFileItemReader
的示例,可以与同一示例一起使用:
@Bean
public FlatFileItemReader<String> itemReader() {
return new FlatFileItemReaderBuilder<String>()
.name("itemReader")
.resource(new FileSystemResource("/absolute/path/to/file"))
.lineMapper(new PassThroughLineMapper())
.build();
}
希望这会有所帮助。