在我的Bindy模型中,我想在一个字段上设置paddingChar。我在文档中看到,使用@固定长度记录我可以添加一个paddingChar属性,但是使用@CsvRecord它似乎不可能?
此代码不会使用" 0"填充字段强制:
@CsvRecord(separator = ";", generateHeaderColumns=true)
public class Unity{
@DataField(pos = 1, length = 3, paddingChar = '0') String mandant;
...
答案 0 :(得分:1)
根据Camel documentation,您可以使用pattern
,Double
,Integer
,Float
,{{1}的Short
属性}和Long
字段。格式根据java.text.DecimalFormat
:
BigDecimal
修改强>
@DataField(pos = 1, pattern = "000")
Float mandant;
被忽略(至少对于Camel 2.13.1),如果没有设置区域设置(一种bug或至少一个未记录的特征......)。因此,请执行以下操作:
pattern
修改强>
我打开了一个Jira问题,因为我认为应该修复它:CAMEL-7578
修改强>
对于Camel版本2.12.5,2.13.3和2.14.0,CAMEL-7578已修复。