Comment analyser le CSV en Java
-
Analyser le CSV en utilisant un
Scanner
en Java -
Analyse CSV en utilisant
String.split()
en Java -
Analyse CSV en utilisant
OpenCSV
en Java
Nous aborderons le sujet de l’analyse d’un CSV en Java. Nous examinerons les différentes méthodes pour effectuer l’analyse CSV en Java de l’échantillon de CSV en Java ci-dessous.
Analyser le CSV en utilisant un Scanner
en Java
La première et la plus classique façon d’analyser un fichier CSV est d’utiliser la classe Scanner
de Java. Dans l’exemple, nous obtenons le fichier en utilisant File
et nous le lisons ensuite avec Scanner
.
La chose la plus importante à noter dans cet exemple est que nous devons connaître le séparateur utilisé en CSV. Nous utilisons la virgule du CSV original comme séparateur ; c’est pourquoi nous pouvons spécifier ,
comme délimiteur dans le code.
import java.io.*;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws FileNotFoundException {
File getCSVFiles = new File("/test/example.csv");
Scanner sc = new Scanner(getCSVFiles);
sc.useDelimiter(",");
while (sc.hasNext()) {
System.out.print(sc.next() + " | ");
}
sc.close();
}
}
Production :
Id | UserName | Age | Job
1 | John Doe | 24 | Developer
2 | Alex Johnson | 43 | Project Manager
3 | Mike Stuart | 26 | Designer
4 | Tom Sean | 31 | CEO |
Analyse CSV en utilisant String.split()
en Java
Dans l’exemple suivant, nous utilisons une méthode split()
qui fonctionne avec la classe String
. Nous pouvons utiliser BufferedReader
pour lire le fichier CSV et le parcourir en boucle en lisant chaque ligne jusqu’à ce qu’elle atteigne null
.
import java.io.*;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws FileNotFoundException {
String line = "";
final String delimiter = ",";
try {
String filePath = "/test/example.csv";
FileReader fileReader = new FileReader(filePath);
BufferedReader reader = new BufferedReader(fileReader);
while ((line = reader.readLine()) != null) // loops through every line until null found
{
String[] token = line.split(delimiter); // separate every token by comma
System.out.println(token[0] + " | " + token[1] + " | " + token[2] + " | " + token[3]);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
Production :
Id | UserName | Age | Job
1 | John Doe | 24 | Developer
2 | Alex Johnson | 43 | Project Manager
3 | Mike Stuart | 26 | Designer
4 | Tom Sean | 31 | CEO
Analyse CSV en utilisant OpenCSV
en Java
Plusieurs bibliothèques peuvent nous aider à analyser le CSV en Java. L’une d’entre elles est OpenCSV
. Dans l’exemple ci-dessous, CSVReader()
prend un fileReader
avec le fichier CSV et retourne ensuite un tableau de chaînes de caractères.
import com.opencsv.CSVReader;
import java.io.*;
import java.util.List;
import java.util.Scanner;
import java.util.Vector;
public class Main {
public static void main(String[] args) throws Exception {
try {
String filePath = "/test/example.csv";
FileReader fileReader = new FileReader(filePath);
CSVReader openCSVReader = new CSVReader(fileReader);
String[] record;
while ((record = openCSVReader.readNext()) != null) {
for (String token : record) {
System.out.print(token + "\t");
}
System.out.println();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
Production :
Id UserName Age Job
1 John Doe 24 Developer
2 Alex Johnson 43 Project Manager
3 Mike Stuart 26 Designer
4 Tom Sean 31 CEO
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn