Schritt 1:
Wenn die CSV-Datei einfach analysiert werden soll (es gibt keine zitierte Felder oder in Feldern eingebettet Komma), können Sie ein einfaches Muster Matcher verwenden können, die spalten CSV-Felder
Pattern pattern = Pattern.compile(",");
Schritt 2:
eine Model-Klasse erstellen. Lassen Sie die Modellklasse als Model
benannt. Erstellen Sie einen Konstruktor mit allen Feldern der Klasse.
Schritt 3:
die CSV-Daten lesen.
try (BufferedReader in = new BufferedReader(new FileReader(csvFile));) {
List<Player> players = in .lines() .skip(1) .map(line -> {
String[] x = pattern.split(line);
return new Player(Integer.parseInt(x[0]), x[1], x[2], x[3], Integer.parseInt(x[4])); }) .collect(Collectors.toList());
}
Schritt 4:
Serialize zu JSON
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
String json = mapper.writeValueAsString(players);
So wird das ganze Programm sein:
Pattern pattern = Pattern.compile(",");
try (BufferedReader in = new BufferedReader(new FileReader(csvFile));) {
List<Player>players = in .lines().skip(1).map(line - > {
String[] x = pattern.split(line);
return new Player(Integer.parseInt(x[0]), x[1], x[2], x[3], Integer.parseInt(x[4]));
}).collect(Collectors.toList());
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
String json = mapper.writeValueAsString(players);
}