Прочитать CSV-файл

JavaJavaBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом лабе мы узнаем, как читать CSV-файл с использованием языка программирования Java. CSV (Comma Separated Values) — это формат файла, используемый для хранения и обмена данными между системами. Мы будем использовать два метода для чтения CSV-файла: с использованием библиотеки OpenCSV и с использованием класса Scanner.

Импорт библиотек

Для использования классов OpenCSV и Scanner в нашем коде нам понадобится импортировать зависимости библиотек. В файле CSVReader.java добавьте следующий код в начало файла:

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

Чтение CSV-файла с использованием библиотеки OpenCSV

Мы можем использовать библиотеку OpenCSV для чтения CSV-файла. Следующий фрагмент кода показывает, как читать CSV-файл с использованием 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());
}

Сохраните изменения и запустите следующую команду в терминале для компиляции и запуска кода:

javac CSVReader.java && java CSVReader

Этот код будет читать CSV-файл с именем students.csv в текущей директории и выводить данные CSV в консоль.

Чтение CSV-файла с использованием класса Scanner

Мы также можем использовать класс Scanner для чтения CSV-файла. Следующий фрагмент кода показывает, как это сделать:

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

В этом примере мы используем класс Scanner для чтения файла с именем students.csv и указываем разделитель , для разделения значений CSV.

Сохраните изменения и запустите следующую команду в терминале для компиляции и запуска кода:

javac CSVReader.java && java CSVReader

Этот код будет читать CSV-файл с именем students.csv в текущей директории и выводить данные CSV в консоль.

Резюме

В этом лабе мы узнали, как читать CSV-файл с использованием языка программирования Java. Мы использовали два метода для чтения CSV-файла: с использованием библиотеки OpenCSV и с использованием класса Scanner. Библиотека OpenCSV предоставляет удобный способ чтения CSV-файла, но требует внешней зависимости. Класс Scanner предоставляет простой способ чтения CSV-файла, но имеет некоторые ограничения при обработке сложных CSV-структур.