<dependency>
<groupId>com.github.geekarl</groupId>
<artifactId>super-csv-java8</artifactId>
<version>2.4.0</version>
</dependency>
try (ICsvBeanReader beanReader = new CsvBeanReader(new FileReader("data.csv"), CsvPreference.STANDARD_PREFERENCE)) {
final String[] header = beanReader.getHeader(true);
final CellProcessor[] processors = getProcessors();
MyDataClass data;
while ((data = beanReader.read(MyDataClass.class, header, processors)) != null) {
System.out.println(data);
}
}
try (ICsvBeanWriter beanWriter = new CsvBeanWriter(new FileWriter("output.csv"), CsvPreference.STANDARD_PREFERENCE)) {
final String[] header = {"id", "name", "age"};
final CellProcessor[] processors = getProcessors();
beanWriter.writeHeader(header);
for (MyDataClass data : dataList) {
beanWriter.write(data, header, processors);
}
}