Java:
Werken met CSV

Hoe:

Laten we CSV-bestanden lezen en schrijven in Java met behulp van de veelgebruikte OpenCSV bibliotheek. Voeg eerst de afhankelijkheid toe aan je pom.xml als je Maven gebruikt.

<dependency>
    <groupId>com.opencsv</groupId>
    <artifactId>opencsv</artifactId>
    <version>5.6</version> <!-- Controleer op de nieuwste versie -->
</dependency>

Een CSV-bestand schrijven

import com.opencsv.CSVWriter;
import java.io.FileWriter;
import java.io.IOException;

public class CSVWritingExample {
    public static void main(String[] args) {
        String[] kop = {"Naam", "Leeftijd", "Land"};
        String[] record1 = {"Alice", "24", "VS"};
        String[] record2 = {"Bob", "19", "Canada"};

        try (CSVWriter schrijver = new CSVWriter(new FileWriter("data.csv"))) {
            schrijver.writeNext(kop);
            schrijver.writeNext(record1);
            schrijver.writeNext(record2);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Een CSV-bestand lezen

import com.opencsv.CSVReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.List;

public class CSVReadingExample {
    public static void main(String[] args) {

        try (CSVReader lezer = new CSVReader(new FileReader("data.csv"))) {
            List<String[]> r = lezer.readAll();
            r.forEach(x -> System.out.println(x[0] + ", " + x[1] + ", " + x[2]));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Voorbeelduitvoer na het lezen:

Naam, Leeftijd, Land
Alice, 24, VS
Bob, 19, Canada

Diepgaande Duik

Historisch gezien worden CSV’s al gebruikt sinds de vroege dagen van persoonlijke computing, waardoor ze een soort lingua franca zijn geworden voor gegevensuitwisseling. Alternatieven zoals JSON, XML of zelfs Excel-formaten kunnen geavanceerdere functies bieden, maar de eenvoud van CSV verzekert zijn voortbestaan. Wanneer je met Java werkt, terwijl OpenCSV een populaire keuze is, kun je ook java.util.Scanner of java.io.BufferedReader gebruiken voor zeer basistaken, hoewel je dan zelf de parsing moet afhandelen. Apache Commons CSV is een andere krachtige bibliotheek die beschikbaar is voor soortgelijke taken.

Zie Ook