0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

シンプルな CSV ファイル読み込み Javaサンプル (Apache commons-csv を利用)

Last updated at Posted at 2021-11-15

ちょっと CSV ファイルを読み込む Java プログラミングを実装したい場合に役立ちそうなサンプルをメモしておきます。
CSVファイル読み書きには RFC 4180 を実装する必要がありますが、一般的にはライブラリ利用により実現します。
この例では Apache commons-csv を利用した CSVファイル読み込みサンプル記述を残しておきます。

Maven (pom.xml)

まず最初に、CSV ファイル読み込みを実現するためのライブラリである Apache commons-csv をビルドに組み込みます。 pom.xml ファイルの <dependencies> に以下の Maven Repository 記述を追加します。 (ビルドでの自動ダウンロードの実現のためには、インターネットに接続されている必要があります)

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-csv</artifactId>
    <version>1.9.0</version>
</dependency>

なお、Maven Repos 上の commons-csv はこちらを参照してください。

Java コード

commons-csv が利用可能になったので、早速これを Java で利用して CSVファイル読み込みを実行するコードを記述しましょう。

このサンプルコードでは、以下のCSVファイルをサンプルとして読み込む前提となっています。

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;

import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVParser;
import org.apache.commons.csv.CSVRecord;

public class App {
    public static void main(String[] args) throws IOException {
        try (CSVParser parser = CSVFormat.DEFAULT.parse( //
                new BufferedReader(new InputStreamReader(new FileInputStream( //
                        "./src/KEN_ALL.CSV"), "Windows-31J")))) {
            for (CSVRecord record : parser) {
                System.err.println(record.get(2) //
                        + ": " + record.get(6) + " " + record.get(7) + " " + record.get(8));
            }
        }
    }
}

簡易な解説

  • CSVFormat から CSVParser インスタンスを作成します。
  • CSVファイルの 1行ごとを CSVRecord インスタンスとして取得します。
  • 1行の各列を get メソッドで取得します。

文書情報

  • 初出: 2021-11-15

関連情報

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?