如何使用Spring Batch解析定长格式文件(不带分隔符的文件) [英] How to use spring batch to parse fixed length formats Files (File Without any delimiter)
本文介绍了如何使用Spring Batch解析定长格式文件(不带分隔符的文件)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何为定长格式文件(不带任何分隔符的文件)配置Spring-Batch阅读器。
每个元素都是根据其开始位置和结束位置确定的。
行样:
120180208FAILED
220180208 SUCCES
120170208 SUCCES
1:代码,20180208:日期,失败:状态
推荐答案
您可以为此使用固定长度令牌化器读取器。
这是您可以配置FixedLengthTokenizer
的方式。
示例文本文件
UK21341EAH4121131.11customer1
UK21341EAH4221232.11customer2
UK21341EAH4321333.11customer3
UK21341EAH4421434.11customer4
UK21341EAH4521535.11customer5
Java配置
@Bean
public FixedLengthTokenizer fixedLengthTokenizer() {
FixedLengthTokenizer tokenizer = new FixedLengthTokenizer();
tokenizer.setNames("ISIN", "Quantity", "Price", "Customer");
tokenizer.setColumns(new Range(1,12),
new Range(13,15),
new Range(16,20),
new Range(21,29));
return tokenizer;
}
XML配置
<bean id="fixedLengthLineTokenizer"
class="org.springframework.batch.io.file.transform.FixedLengthTokenizer">
<property name="names" value="ISIN,Quantity,Price,Customer" />
<property name="columns" value="1-12, 13-15, 16-20, 21-29" />
</bean>
这篇关于如何使用Spring Batch解析定长格式文件(不带分隔符的文件)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文