Lire un fichier CSV

JavaJavaBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, nous allons apprendre à lire un fichier CSV à l'aide du langage de programmation Java. Le CSV (Comma Separated Values) est un format de fichier utilisé pour stocker et échanger des données entre des systèmes. Nous allons utiliser deux méthodes pour lire le fichier CSV : en utilisant la bibliothèque OpenCSV et en utilisant la classe Scanner.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/FileandIOManagementGroup(["File and I/O Management"]) java/ObjectOrientedandAdvancedConceptsGroup -.-> java/user_input("User Input") java/FileandIOManagementGroup -.-> java/files("Files") java/FileandIOManagementGroup -.-> java/read_files("Read Files") java/FileandIOManagementGroup -.-> java/io("IO") subgraph Lab Skills java/user_input -.-> lab-117442{{"Lire un fichier CSV"}} java/files -.-> lab-117442{{"Lire un fichier CSV"}} java/read_files -.-> lab-117442{{"Lire un fichier CSV"}} java/io -.-> lab-117442{{"Lire un fichier CSV"}} end

Importation des bibliothèques

Nous devrons importer les dépendances de bibliothèque pour utiliser les classes OpenCSV et Scanner dans notre code. Dans le fichier CSVReader.java, ajoutez le code suivant au début du fichier :

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;
import com.opencsv.CSVReader;

Lire un fichier CSV à l'aide de la bibliothèque OpenCSV

Nous pouvons utiliser la bibliothèque OpenCSV pour lire le fichier CSV. Le extrait de code suivant montre comment lire un fichier CSV à l'aide d'OpenCSV.

try {
    FileReader fileReader = new FileReader("students.csv");
    CSVReader csvReader = new CSVReader(fileReader);
    String[] nextRecord;
    while ((nextRecord = csvReader.readNext())!= null) {
        System.out.println(nextRecord[0] + " " + nextRecord[1] + " " + nextRecord[2]);
    }
    csvReader.close();
} catch (IOException e) {
    System.out.println(e.getMessage());
}

Enregistrez les modifications et exécutez la commande suivante dans le terminal pour compiler et exécuter le code :

javac CSVReader.java && java CSVReader

Ce code lira le fichier CSV nommé students.csv dans le répertoire actuel et imprimera les données CSV dans la console.

Lire un fichier CSV à l'aide de la classe Scanner

Nous pouvons également utiliser la classe Scanner pour lire le fichier CSV. Le extrait de code suivant montre comment le faire :

try {
    File file = new File("students.csv");
    Scanner scanner = new Scanner(file);
    scanner.useDelimiter(",");
    while (scanner.hasNext()) {
        System.out.print(scanner.next() + " ");
    }
    scanner.close();
} catch (FileNotFoundException e) {
    System.out.println(e.getMessage());
}

Dans cet exemple, nous utilisons la classe Scanner pour lire un fichier nommé students.csv et spécifions un délimiteur , pour séparer les valeurs CSV.

Enregistrez les modifications et exécutez la commande suivante dans le terminal pour compiler et exécuter le code :

javac CSVReader.java && java CSVReader

Ce code lira le fichier CSV nommé students.csv dans le répertoire actuel et imprimera les données CSV dans la console.

Résumé

Dans ce laboratoire, nous avons appris à lire un fichier CSV à l'aide du langage de programmation Java. Nous avons utilisé deux méthodes pour lire le fichier CSV : en utilisant la bibliothèque OpenCSV et en utilisant la classe Scanner. La bibliothèque OpenCSV fournit un moyen pratique de lire le fichier CSV mais nécessite une dépendance externe. La classe Scanner fournit un moyen simple de lire le fichier CSV mais présente certaines limites dans la gestion de structures CSV complexes.