<dependency>
<groupId>com.github.juliacodes</groupId>
<artifactId>csvd</artifactId>
<version>1.1.0</version>
</dependency>
public class Person {
private String name;
private int age;
private String email;
@CsvHeader(value = "Name")
public void setName(String name) {
this.name = name;
}
@CsvHeader(value = "Age")
public void setAge(String age) {
this.age = Integer.parseInt(age);
}
@CsvHeader(value = "Email")
public void setEmail(String email) {
this.email = email;
}
}
public List<Person> parseCSV(String filePath) throws IOException {
CsvClient<Person> csvClient = new CsvClient<>(Person.class);
List<Person> persons = new ArrayList<>();
try (Reader reader = Files.newBufferedReader(Paths.get(filePath))) {
CsvReader<Person> csvReader = csvClient.getReader(reader);
persons = csvReader.readBeans();
}
return persons;
}
public void writeCSV(List<Person> persons, String filePath) throws IOException {
CsvClient<Person> csvClient = new CsvClient<>(Person.class);
csvClient.writeBeans(persons, filePath);
}