首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring-Batch:将对象写入固定长度的行?

Spring-Batch:将对象写入固定长度的行?
EN

Stack Overflow用户
提问于 2017-11-16 17:14:03
回答 1查看 4.2K关注 0票数 5

Spring-Batch提供了FixedLengthTokenizer类,这使得将一行的不同偏移量读取到对象的文件中变得很容易。由此从具有固定长度的特定范围中提取每个字段的内容:

代码语言:javascript
复制
FixedLengthTokenizer tokenizer = new FixedLengthTokenizer();
String[] names = {"A", "B", "C", "D"};
tokenizer.setNames(names);
Range[] ranges = {new Range(1, 4), new Range(5, 12), new Range(13, 14), new Range(15, 15)};
tokenizer.setColumns(ranges);

我想要做完全相反的事情。我想要将一个对象写入到一个平面文件中,因此不同的字段应该以固定的长度写入该文件中。Spring-Batch提供了将行映射到对象的接口org.springframework.batch.item.file.transform.LineAggregator。但我想知道为什么没有这样做的FixedLengthLineAggregator

在Spring-Batch中将对象写到行中的正确方式是什么,即字段具有固定长度?

EN

回答 1

Stack Overflow用户

发布于 2020-06-16 23:42:23

正如@canillas在他们的评论中指出的那样,管理这一点的方法将是通过Spring Batch的FormatterLineAggregator。使用String.format的格式化功能可以让您以一种跨JVM和独立于框架的标准方式生成固定长度的记录。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47325636

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档