2016-05-31 80 views
2

フォームファイルで@Parsedアノテーションを使用してCSVファイルを解析しようとしていますが、機能しません。フォーム - Univocityパーサーで@Parsedアノテーションを使用してCSVファイルを解析する

私はlibに

Init.java

public static void main(String[] args) throws FileNotFoundException { 

     CsvParserSettings parserSettings = new CsvParserSettings(); 

     BeanListProcessor<FireReportFormGeneral> rowProcessor = new BeanListProcessor<FireReportFormGeneral>(FireReportFormGeneral.class); 

     parserSettings.setRowProcessor(rowProcessor); 
     parserSettings.setHeaderExtractionEnabled(true); 
     CsvParser parser = new CsvParser(parserSettings); 


     parser.parse(new FileReader("/home/jose/Desktop/example.csv")); 
     List<FireReportFormGeneral> beans = rowProcessor.getBeans(); 
     System.out.println(rowProcessor.getHeaders()); 
     System.out.println(beans); 

    } 

FireReportFormGeneral.java

@Parsed(field = "Account Number") 
    private String accountNumber; 

    @Parsed(field = "Account Type") 
    private String accountType; 

    @Parsed(field = "Bank Client Identification Number") 
    private String bankClientIdNumber; 

    @Parsed(field = "Account Opening Date") 
    private String accountOpeningDate; 

    //getters and setters 

univocity使用しかし、私のいLjava.lang.String [

; 7591083d [[email protected]、 com.opessoftware.fire.csv.reader.FireReportFormGeneral @ @:出力は常にのようなものです736e9adb]

確かに私は何か間違っていますが、私は答えを見つけることができませんでした。

ありがとうございました。

EDIT:

私は例えばコールbeans.get(index).getAccountName()が、私のために値を返すために起こっている場合は、問題

が事がある解決。

+0

ツアーパーサーとは何ですか? 'univocity-parsers'?そうだとすれば、投稿を再タグする。 –

+0

@AmirPashazadeh私はunivocityをタグできません、私はすでに試してみました:/ –

答えて

0

FireReportFormGeneral.javaにtoString()メソッドを追加すると、System.out.println()を読みやすくすることができます。

例えば、

public String toString(){ 
return "Account number: " + accountNumber + " Account Type: " + accountType; 
} 

これは単純な例では、nullチェックなしで、StringBuilderの等...

これはあなたの問題を解決していますか?

関連する問題