ezt*_*tam 5 java spring batch-processing spring-batch
Spring-Batch 提供了一个类FixedLengthTokenizer,它可以轻松地将单行的不同偏移量读取到对象的字段中。其中每个字段的内容是从固定长度的某些范围中提取的:
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);
Run Code Online (Sandbox Code Playgroud)
我想做完全相反的事情。我想将一个对象写入一个平面文件,其中不同的字段应该以固定长度写入文件。Spring-Batch 提供了org.springframework.batch.item.file.transform.LineAggregator将线映射到对象的接口。但我想知道为什么没有FixedLengthLineAggregator这样做?
Spring-Batch 中将对象写入字段具有固定长度的行的正确方法是什么?
正如 @canillas 在他们的评论中指出的,管理此问题的方法是通过 Spring Batch 的FormatterLineAggregator. 使用 的格式功能String.format可以让您以跨 JVM 和框架独立的标准方式生成固定长度记录。
| 归档时间: |
|
| 查看次数: |
3981 次 |
| 最近记录: |