请问是否有任何好的库可以将平面文件转换为Java对象?我找到了flatworm,但我正在寻找其他选择。
请问是否有任何好的库可以将平面文件转换为Java对象?我找到了flatworm,但我正在寻找其他选择。
另一个选择是我写的使用Java注解的JFileHelpers - http://jfilehelpers.com
注释bean的示例:
@FixedLengthRecord()
public class Customer {
@FieldFixedLength(4)
public Integer custId;
@FieldAlign(alignMode=AlignMode.Right)
@FieldFixedLength(20)
public String name;
@FieldFixedLength(3)
public Integer rating;
@FieldTrim(trimMode=TrimMode.Right)
@FieldFixedLength(10)
@FieldConverter(converter = ConverterKind.Date,
format = "dd-MM-yyyy")
public Date addedDate;
@FieldFixedLength(3)
@FieldOptional
public String stockSymbol;
}
FileHelperEngine<Customer> engine =
new FileHelperEngine<Customer>(Customer.class);
List<Customer> customers =
new ArrayList<Customer>();
customers = engine.readResource(
"/samples/customers-fixed.txt");
你可以考虑使用JRecordBind(我是它的作者)
与其他工具不同,它能够解析和创建平面文件,并且使用普通的XML Schema(因此您不必学习另一种配置语法)。 一些用户将相同的XSD用于生成Web服务和平面文件输出。
附注:我最近将代码移动到了github上