I have a CSV file with the following columns: id, fname, telephone, lname, address.
I have a P
You can use HeaderColumnNameTranslateMappingStrategy. Lets assume your CSV has the following columns: Id, Fname, Telephone, Lname, Address for the sake of simplicity.
CsvToBean csvToBean = new CsvToBean();
Map columnMapping = new HashMap();
columnMapping.put("Id", "id");
columnMapping.put("Fname", "fname");
columnMapping.put("Lname", "lname");
HeaderColumnNameTranslateMappingStrategy strategy = new HeaderColumnNameTranslateMappingStrategy();
strategy.setType(Person.class);
strategy.setColumnMapping(columnMapping);
List list = null;
CSVReader reader = new CSVReader(new InputStreamReader(ClassLoader.getSystemResourceAsStream("test.csv")));
list = csvToBean.parse(strategy, reader);
The columnMapping will map the columns with your Person object.