Сопоставление CSV с моделью

Я пишу простой процессор CSV в XML на Java.

Я использую JAXB для создания модели в java из DTD. Мне нужно преобразовать формат CSV в эту модель, а затем преобразовать ее в XML, соответствующий DTD. Я использую JAXB для сортировки данных из модели Java в XML. Я должен сам написать отображение CSV-модели.

На данный момент я не могу придумать лучшего решения, чем напрямую сопоставить CSV с моделью Java, прочитав его и назначив модели в коде.

Есть ли более элегантное решение, о котором вы можете подумать? Возможно, какая-то многоразовая библиотека сопоставления и т. Д.?

Заранее спасибо.


person bowsie    schedule 03.02.2009    source источник


Ответы (2)


Обычно я использую библиотеку flatpack для преобразования CSV в модели Java: Проект Flatpack на sourceforge

Довольно просто использовать и использовать сопоставления XML для обработки проекции CSV в модель (таким образом, не вызывая жесткой связи между вашим csv и вашими java-объектами)

person WiseTechi    schedule 03.02.2009
comment
Потрясающий. Это именно то, что я искал. Спасибо. - person bowsie; 03.02.2009

Если у вас есть прямое сопоставление, вы можете использовать сторонний инструмент для прямого сопоставления csv с xml (например, конвертер csv2xml

В качестве альтернативы прочитайте файл csv как набор карт с «ключом» в качестве имени соответствующего свойства в классе java. Затем вы можете написать простой синтаксический анализатор, который будет использовать отражение для установки значений csv из карты в объекты Java.

person Rahul    schedule 03.02.2009