Analizza CSV in Java

Rupam Yadav 12 ottobre 2023
  1. Analizza CSV utilizzando Scanner in Java
  2. Analizza CSV utilizzando String.split() in Java
  3. Analizza CSV utilizzando OpenCSV in Java
Analizza CSV in Java

Toccheremo l’argomento dell’analisi di un CSV in Java. Esamineremo i vari metodi per eseguire l’analisi CSV Java del CSV di esempio di seguito in Java.

Esempio di CSV Java

Analizza CSV utilizzando Scanner in Java

Il primo e più classico modo per analizzare un file CSV è utilizzare la classe Scanner di Java. Nell’esempio, otteniamo il file usando File e poi lo leggiamo con Scanner.

La cosa più importante da notare in questo esempio è che dobbiamo conoscere il separatore utilizzato in CSV. Usiamo la virgola nel CSV originale come separatore; ecco perché possiamo specificare , come delimitatore nel codice.

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();
  }
}

Produzione:

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 | 

Analizza CSV utilizzando String.split() in Java

Nel prossimo esempio, usiamo un metodo split() che funziona con la classe String. Possiamo usare BufferedReader per leggere il file CSV e scorrere in loop leggendo ogni riga finché non raggiunge 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();
    }
  }
}

Produzione:

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

Analizza CSV utilizzando OpenCSV in Java

Diverse librerie possono aiutarci ad analizzare il CSV in Java. Uno di questi è OpenCSV. Nell’esempio seguente, CSVReader() accetta un fileReader con il file CSV e quindi restituisce un array di stringhe.

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();
    }
  }
}

Produzione:

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	
Autore: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

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

Articolo correlato - Java CSV