OpenCSV: Comment créer le fichier CSV à partir de POJO personnalisée avec des en-têtes de colonne et une colonne personnalisée positions?

J'ai créé un MappingsBean classe où toutes les colonnes du fichier CSV sont spécifiés. Ensuite, j'ai analyser des fichiers XML et créer une liste de mappingbeans. Puis-je écrire les données dans le fichier CSV comme rapport.

Je suis en utilisant des annotations suivantes:

public class MappingsBean {

    @CsvBindByName(column = "TradeID")
    @CsvBindByPosition(position = 0)
    private String tradeId;

    @CsvBindByName(column = "GWML GUID", required = true)
    @CsvBindByPosition(position = 1)
    private String gwmlGUID;

    @CsvBindByName(column = "MXML GUID", required = true)
    @CsvBindByPosition(position = 2)
    private String mxmlGUID;

    @CsvBindByName(column = "GWML File")
    @CsvBindByPosition(position = 3)
    private String gwmlFile;

    @CsvBindByName(column = "MxML File")
    @CsvBindByPosition(position = 4)
    private String mxmlFile;

    @CsvBindByName(column = "MxML Counterparty")
    @CsvBindByPosition(position = 5)
    private String mxmlCounterParty;

    @CsvBindByName(column = "GWML Counterparty")
    @CsvBindByPosition(position = 6)
    private String gwmlCounterParty;
}

Puis-je utiliser StatefulBeanToCsv classe d'écrire dans le fichier CSV:

File reportFile = new File(reportOutputDir + "/" + REPORT_FILENAME);
Writer writer = new PrintWriter(reportFile);
StatefulBeanToCsv<MappingsBean> beanToCsv = new 
                              StatefulBeanToCsvBuilder(writer).build();
beanToCsv.write(makeFinalMappingBeanList());
writer.close();

Le problème avec cette approche est que si j'utilise @CsvBindByPosition(position = 0) de contrôle
la position puis je ne suis pas en mesure de générer des noms de colonne. Si j'utilise @CsvBindByName(column = "TradeID") alors je ne suis pas en mesure de définir la position des colonnes.

Est-il une manière que je peux utiliser les deux annotations, afin que je puisse créer des fichiers CSV avec des en-têtes de colonne et aussi de contrôle de la position de la colonne?

Ce qui concerne,
Vikram Pathania

Ceci exemple devrait vous aider.
Salut Rao,Ce lien ne fonctionne pas
vérifier correctement. il est de travail.

OriginalL'auteur Vikram Pathania | 2017-07-20