2016-05-31 1 views
2

Я пытаюсь разобрать CSV-файл с аннотацией @Parsed в файле формы, но он не работает.Разбор CSV-файла с @Parsed аннотацией в форме - парсер Univocity

Я использую univocity 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 

Но мой Выход всегда что-то вроде:

[Ljava.lang.String; @ 7591083d [[email protected], com.opessoftware.fire.csv.reader.FireReportFormGeneral @ 736e9adb]

Конечно, я делаю что-то неправильно, но я не мог найти ответ.

Спасибо.

EDIT:

Я решить проблему

Дело в том, если вызов beans.get(index).getAccountName(), например, это будет возвращать значения для меня.

+0

Что такое парсер для тура? 'Однозначность-parsers'? Если это так, верните сообщение. –

+0

@AmirPashazadeh Я не могу отметить единообразие, я уже пробовал: / –

ответ

0

Вы можете добавить метод toString() в FireReportFormGeneral.java, тогда ваш System.out.println() должен быть более читаемым.

например.

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

Это лишь простой пример, без пустых чеков, StringBuilder и т.д. ...

Решает ли это проблему?

Смежные вопросы