はじめに
この実験では、Java プログラミング言語を使って CSV ファイルを読み取る方法を学びます。CSV(Comma Separated Values)は、システム間でデータを保存および交換するために使用されるファイル形式です。CSV ファイルを読み取るために 2 つの方法を使います。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;
OpenCSV ライブラリを使って CSV ファイルを読み取る
OpenCSV ライブラリを使って CSV ファイルを読み取ることができます。次のコード スニペットは、OpenCSV を使って CSV ファイルを読み取る方法を示しています。
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
このコードは、現在のディレクトリにある students.csv という名前の CSV ファイルを読み取り、CSV データをコンソールに出力します。
Scanner クラスを使って CSV ファイルを読み取る
CSV ファイルを読み取るために Scanner クラスも使用できます。次のコード スニペットはその方法を示しています。
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
このコードは、現在のディレクトリにある students.csv という名前の CSV ファイルを読み取り、CSV データをコンソールに出力します。
まとめ
この実験では、Java プログラミング言語を使って CSV ファイルを読み取る方法を学びました。CSV ファイルを読み取るために 2 つの方法を使いました。OpenCSV ライブラリを使う方法と Scanner クラスを使う方法です。OpenCSV ライブラリは CSV ファイルを読み取るための便利な方法を提供しますが、外部の依存関係が必要です。Scanner クラスは CSV ファイルを読み取るための簡単な方法を提供しますが、複雑な CSV 構造を処理する際にいくつかの制限があります。



