Javaでファイルを読み込む方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaでファイルを読み込む方法について解説しています。ここではFileReaderクラスを使った書き方を解説します。java.nio.file.Filesクラスを使った方法についても覚えておきましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

Javaでファイルを読み込む方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

Javaについてそもそもよく分からないという方は、Javaとは何なのか解説した記事を読むとさらに理解が深まるでしょう。

 

なお本記事は、TechAcademyのオンラインブートキャンプJava講座の内容をもとに作成しています。

 

田島悠介

今回は、Javaに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

ファイルを読み込む方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

FileReaderクラスとは

FileReaderクラスとは、java.ioパッケージのなかに存在するクラスでテキストファイルを読み込むためのクラスです。

FileReaderクラスはファイルのデータをストリームで読み込むことができます。

 

[PR] Javaで挫折しない学習方法を動画で公開中

FileReaderクラスを利用してファイルを読み込む方法

FileReaderクラスを利用するには以下のように使います

 

import java.io.FileReader;
import jaba.io.File;

File ファイル = new File(読み込みたいファイルのパス);
FileReader 変数 = new FileReader(ファイル);
int 読み込んだ値を入れる変数;
while ((読み込んだ値を入れる変数 = 変数.read()) != -1) {
  処理;
}
変数.close();

Fileクラスのオブジェクトを作成します。Fileクラスのコンストラクタにファイルのパスを設定することで読み込むファイルを作成しましょう。

次に読み込むFileReaderクラスのオブジェクトを作成しましょう。先ほどファイルクラスのオブジェクトをFileReaderクラスのコンストラクタに設定します。

次にファイルを読み込みましょう。readメソッドを使うことで読み込んだファイルを1行ずつストリームで読み込みます。int型で戻り値が戻ってくるでしょう。

最終行を読み込んだ後は-1で返ります。ファイルを読み込み終えたら最後closeメソッドを使ってファイルを閉じましょう。

 

実際に書いてみよう

実際にJavaでファイルを読み込むプログラムを作成してみましょう。

プログラムソースコード

import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class SampleClass {
  public static void main(String[] args) {
    File file = new File("C:/sample.txt");
    FileReader fileReader;
    try {
      fileReader = new FileReader(file);
      int text;
      while ((text = fileReader.read()) != -1) {
        System.out.print((char)text);
      }

      fileReader.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

実行結果

サンプル
こんにちは
さようなら

今回sample.txtには以下のように記入しています。

サンプル
こんにちは
さようなら

実行結果でもsample.txtの内容と同じように取得できたことから問題なくファイルの読み込みに成功しました。

 

その他のファイルを読み込む方法

今回はFileReaderクラスを使う方法を説明しました。

Javaで他にファイルを読み込む方法としてはjava.nio.file.Filesクラスを使う方法があります。この方法はこれまでのjava.io.Fileクラスを使う方法に比べて圧倒的にシンプルに書くことが可能です。

しかし、全てのJavaのバージョンで使えるわけではなく、Java7以降で使用できる点に注意する必要があります。

 

まとめ

この記事ではJavaでファイルを読み込む方法について紹介しました。

今回は特にjava.io.Fileクラスを用いた方法を紹介し、それ以外にもJava7以降はjava.nio.files.Filesクラスを使うことでより簡潔に記入可能です。

 

執筆してくれたメンター

メンターSさん

システムエンジニアとしてこれまで行政システムや医療用システムの保守、開発に携わりました。

JavaやPython、PHP、Kotlinなど様々な言語での開発経験があります。

TechAcademyではJavaコース、Pythonコース、AIコースなど7コースを担当しています。

 

大石ゆかり

Javaでファイルを読み込む方法がよく分かったので、良かったです!

田島悠介

ゆかりちゃん、これからも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、JavaやServletの技術を使ってWebアプリケーション開発を習得できるオンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。