「駑馬十駕」を信念に IT系情報を中心に調べた事をコツコツ綴っています。

Javaでのファイル操作は、アプリ開発や業務システムに欠かせない基本スキルです。
本記事では以下の内容を網羅的に解説します。

  • テキストファイルの読み込み

  • テキストファイルへの書き込み

  • CSVファイルの読み込み・書き込み

  • ファイル操作の注意点(文字コード・例外処理など)

初心者でもわかりやすいコード例付きなので、ぜひ試してみてください。


1. テキストファイルの読み込み

サンプルコード(BufferedReaderを使用)

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class FileReadExample {
    public static void main(String[] args) {
        String filePath = "sample.txt";

        try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
            String line;
            while ((line = br.readLine()) != null) {
                System.out.println(line); // 1行ずつ出力
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

try-with-resources 構文を使うと、ファイルクローズを自動で処理してくれるので便利です。


2. テキストファイルへの書き込み

サンプルコード(BufferedWriterを使用)

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class FileWriteExample {
    public static void main(String[] args) {
        String filePath = "output.txt";

        try (BufferedWriter bw = new BufferedWriter(new FileWriter(filePath))) {
            bw.write("Hello, Java!");
            bw.newLine();
            bw.write("ファイル書き込みのサンプルです。");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

newLine() で改行を入れられます。


3. CSVファイルの読み込み

サンプルコード(カンマ区切りをsplitで処理)

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class CSVReadExample {
    public static void main(String[] args) {
        String filePath = "data.csv";

        try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
            String line;
            while ((line = br.readLine()) != null) {
                String[] values = line.split(","); // カンマで分割
                for (String value : values) {
                    System.out.print(value + " | ");
                }
                System.out.println();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

✅ 実務では Apache Commons CSV や OpenCSV などのライブラリを使うと便利です。


4. CSVファイルへの書き込み

サンプルコード

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class CSVWriteExample {
    public static void main(String[] args) {
        String filePath = "output.csv";

        try (BufferedWriter bw = new BufferedWriter(new FileWriter(filePath))) {
            bw.write("名前,年齢,職業");
            bw.newLine();
            bw.write("山田太郎,30,エンジニア");
            bw.newLine();
            bw.write("佐藤花子,25,デザイナー");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

 

5. ファイル操作の注意点

  • 文字コード
    日本語を扱う場合、UTF-8 か Shift-JIS かを明示的に指定する必要があります。
    例: new InputStreamReader(new FileInputStream(file), StandardCharsets.UTF_8)

  • 例外処理
    IOException は必ずハンドリング。実運用ではログ出力や再試行処理を組み込むことも多いです。

  • 外部ライブラリ

    • OpenCSV:CSV専用で便利

    • Apache Commons IO:ファイル操作を簡単にするユーティリティ多数


まとめ

本記事では Javaでのファイル操作(読み込み・書き込み・CSV処理) を解説しました。

  • BufferedReaderBufferedWriter を使えば基本操作はOK

  • CSVは自作でも処理できるが、ライブラリ利用が効率的

  • 文字コードと例外処理は必ず意識する

ファイル操作は業務システム開発やバッチ処理の基本中の基本です。ぜひこの記事を参考に実装してみてください。

0 0
Article Rating
申し込む
注目する
guest
0 コメント一覧
最も古い
最新 高評価
インラインフィードバック
すべてのコメントを見る

Ads by Google

0 0
Article Rating
申し込む
注目する
guest
0 コメント一覧
最も古い
最新 高評価
インラインフィードバック
すべてのコメントを見る
0
あなたの考えが大好きです、コメントしてください。x