Wie kann eine Excel CSV Datei mit Java mit Apache commons eingelesen werden?

Erstellt am 13. Mai 2018 von It_berater

Will man Excel CSV Dateien einlesen geht das mit einem Einzeiler in Java:

parser = new CSVParser(reader, CSVFormat.EXCEL.withDelimiter(';').withHeader().withIgnoreHeaderCase().withTrim());

Hier die Testmethode die auch etwas Kontext auf der Konsole ausgibt dazu. Man sieht auch, das man auf die Inhalte über einen Index oder den Spaltennamen zugreifen kann. Dann muss auch jedesmal das gleiche Ergebnis geliefert werden, das wird auch in der assert abgetestet.

@Test
	public void testRead() throws Exception {

		ExcelReader reader = new ExcelReader();

		File f = new File("src/test/resources/de/wenzlaff/linkchecker/test.csv");

		CSVParser csvParser = reader.read(f.toURI());

		System.out.println("Parser: " + csvParser);

		printRecords(csvParser);

		System.out.println("Parser: " + reader);

		reader.close();

Im Gradle Buildfile muss die Abhängigkeit ergänzt werden:

dependencies {
 
    compile group: 'org.apache.commons', name: 'commons-csv', version:'1.5'
}

oder für die Maven User:

<dependency>
		<groupId>org.apache.commons</groupId>
		<artifactId>commons-csv</artifactId>
		<version>1.5</version>
	</dependency>

Der ganze Code mit Beispiel-Projekt ist hier zu finden.

Ähnliche Artikel:

  1. Java: Parsen von HTML-Dateien mit JSoup 1.9.2 in zwei Java Zeilen
  2. Rest Test Programm: Java Migration von JUnit 4 nach JUnit 5 (1.0.0.-M6)
  3. Twitter zugriff mit java-twitter