我正在用Java编写一个简单的CSV到XML处理器。
我正在使用JAXB从DTD中生成java模型。我需要将CSV格式处理到此模型中,然后将其编组为符合DTD的XML。我正在使用JAXB将数据从Java模型转换为XML。我必须自己编写CSV模型映射。
目前,我认为没有比通过读取CSV并将其直接映射到Java模型更好的解决方案,并将其分配给代码中的模型。
您能想到的是否有更优雅的解决方案?也许是一些可重用的映射库等?
提前致谢。
答案 0 :(得分:2)
我通常使用flatpack库将CSV解析为Java模型: Flatpack Project on sourceforge
使用和使用XML映射来处理CSV到模型投影非常简单(因此不会导致csv和java对象之间的紧密耦合)
答案 1 :(得分:1)
如果你有一个directforard映射,你可以使用第三方工具直接将csv映射到xml(例如csv2xml converter
或者,将csv文件作为地图集合读取,其中“key”作为java类中相应属性的名称。然后你可以编写一个简单的解析器,它将使用反射将csv值从map设置为java对象。