Conversione file flat per Java Objects [chiusa]
Soluzione
FFP - Lima piatta libreria di analisi
http://jffp.sourceforge.net/
Altri suggerimenti
Breve aggiornamento: verme piatto non è stato attivo per un bel po ', c'è un bivio chiamato BeanIO: http://www.beanio.org/
Un'altra alternativa, che ho scritto che usa Java NOTE è JFileHelpers - http://jfilehelpers.com
Un esempio di fagioli con annotazioni:
@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;
}
Poi tutto quello che dovete fare è:
FileHelperEngine<Customer> engine =
new FileHelperEngine<Customer>(Customer.class);
List<Customer> customers =
new ArrayList<Customer>();
customers = engine.readResource(
"/samples/customers-fixed.txt");
Non ho usato questo JFlat , Ma sembra che questo quadro prevede la conversione da file flat per oggetto Java.
Analogamente BeanIO e Jsefa fornisce anche un'API semplice e flessibile.
Si può provare con FlatPack - ma è vecchio e la documentazione non sono buone come JFlat o BeanIO
Apache Camel ha componente Flatpack come pure da 2.10 ha componente BeanIO
Si desidera prendere in considerazione JRecordBind (io sono il suo autore)
A differenza di altri, è in grado sia di analizzare e creare file flat e utilizza pianura schema XML (in modo da non dover imparare ancora un'altra sintassi di configurazione). Alcuni utenti riciclare lo stesso XSD per la produzione sia per webservice e file piatti uscita.
ps: Recentemente ho spostato il codice github
Si può anche dare una prova per Fixedformat4j . Mi piace l'approccio di annotazioni ed è molto semplice da definire un formato campo personalizzato.