MENU

Javaでファイルを読み込む方法

このガイドでは、Javaを使用してテキストファイルを読み込む方法を説明します。以下のコード例では、BufferedReaderを使用してファイルを1行ずつ読み込む方法を示しています。

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

public class FileRead {
    public static void main(String[] args) {
        try {
            FileInputStream fs = new FileInputStream("data.txt");
            InputStreamReader isr = new InputStreamReader(fs, "UTF-8");
            BufferedReader br = new BufferedReader(isr);

            String data;
            while ((data = br.readLine()) != null) {
                System.out.println(data);
            }

            br.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
目次

コードの説明

インポート文

  • BufferedReaderFileInputStreamInputStreamReader、およびIOExceptionをインポートしています。これらはファイルを読み込む際に必要なクラスです。

クラス定義とメインメソッド

  • クラス名はFileReadとし、mainメソッド内でファイルの読み込みを行います。

ファイルの読み込み

  1. FileInputStream fs = new FileInputStream("data.txt");
    • ファイル「data.txt」を読み込むためのFileInputStreamオブジェクトを作成します。
  2. InputStreamReader isr = new InputStreamReader(fs, "UTF-8");
    • FileInputStreamから読み込んだバイトデータをInputStreamReaderを使って文字データに変換します。文字コードとして「UTF-8」を指定しています。
  3. BufferedReader br = new BufferedReader(isr);
    • InputStreamReaderをラップすることで、ファイルの内容を1行ずつ効率よく読み込むことができるようにしています。

ファイルの内容を読み込んで表示

  • while ((data = br.readLine()) != null)
    • readLine()メソッドを使用して、ファイルから1行ずつ読み込みます。nullが返されるまで繰り返します。
  • System.out.println(data);
    • 読み込んだ1行の内容をコンソールに出力します。

リソースの解放

  • br.close();
    • 使用したリソースを解放するためにBufferedReaderを閉じます。

例外処理

  • catch (IOException e)
    • ファイルの読み込み中にエラーが発生した場合、IOExceptionがキャッチされ、エラーメッセージが出力されます。

注意点

  • ファイル名「data.txt」は相対パスで指定していますが、絶対パスを使用する場合はフルパスで指定してください。
  • ファイルのエンコーディングを指定しないと、環境によっては文字化けする可能性がありますので、適切なエンコーディング(この例では「UTF-8」)を指定することをお勧めします。

まとめ

このコードを使うことで、Javaでテキストファイルを簡単に読み込むことができます。BufferedReaderを使うと、ファイルの内容を1行ずつ効率的に処理することが可能です。ファイルの読み込みは多くのプログラムで必要になる基本的な操作ですので、ぜひ覚えておきましょう。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次