【Java入門】Pathを設定してファイルを読み込み・書き込みする方法

Javaでパスを指定してファイルを読み込むにはどうすればいいの?
Javaでパスを指定してファイルに書き込むにはどうすればいいの?

こんにちは! エンジニアの中沢です。Javaにはフォルダ(ディレクトリ)やファイルの場所を表す「パス(Path)」があります。

実際に開発の現場ではパスを指定してファイルの読み込みや書き込みをする機会が多いと言えますので、この記事を読んで上手く活用してください。

この記事では、こんな人のために書きました。

  • そもそもパス(Path)とは何か?
  • パスを指定してファイルを読み込む方法が知りたい
  • パスを指定してファイルを書き込む方法が知りたい

今回はこれらの方法を覚えるために、Javaにおける「パス(Path)」の使い方をわかりやすく解説します。

なお、Javaの記事については、こちらにまとめています。

Javaにおけるパス(Path)とは

パス(Path)とは、フォルダ(ディレクトリ)やファイルの場所を表すものです。パスは、「c:SampleTest.txt」のように記述しますこの記事では、パスを指定してファイルの読み書きをする方法などのパスの使い方を解説します。

Javaでパスを指定してファイルを読み書きする

パスを指定してファイルを読み込む方法

ここでは、パスを指定してファイルを読み込む方法を解説します。パスを指定してファイルを読み込むには、Fileクラス、FileReaderクラスを使用します。

次のプログラムで確認してみましょう。ここではディレクトリ「c:Sample」にTest.txtを格納してファイルを読み込んでいます。

import java.io.File;
import java.io.FileReader;
import java.io.IOException;

public class Main {

    public static void main(String[] args) {
        try {
            // Fileクラスに読み込むファイルを指定する
            File file = new File("c:SampleTest.txt");

            // ファイルが存在するか確認する
            if (file.exists()) {

                // FileReaderクラスのオブジェクトを生成する
                FileReader filereader = new FileReader(file);

                // filereaderクラスのreadメソッドでファイルを1文字ずつ読み込む
                int data;
                while ((data = filereader.read()) != -1) {
                    System.out.print((char) data);
                }

                // ファイルクローズ
                filereader.close();

            } else {
                System.out.print("ファイルは存在しません");
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}

実行結果:

SAMURAI
ENGINEER

無事にファイルを読み込めましたでしょうか? このプログラムでは、Fileクラスを指定して、読み込む対象のファイルパスを指定し、existsメソッドでFileクラスで指定したパスに対象のファイルが存在するか確認します。

ファイルが存在したらファイルを読み込むためのFileReaderクラスのオブジェクトを生成し、filereaderクラスのreadメソッドでファイルを1文字ずつ読み込みます。全て読み込んだら、closeメソッドで忘れずにファイルをクローズしておきましょう。

このようにして、パスを指定してファイルを読み込むことができました。ファイルを読み込む方法についてはこちらの記事でも詳しく解説しているので、ぜひ確認してください。

【初心者のためのJava入門】ファイルを読み込む4つの方法を解説
更新日 : 2021年9月9日

パスを指定してファイルを書き込む方法

ここでは、パスを指定してファイルを書き込む方法を解説します。パスを指定してファイルを書き込むには、FileWriterクラス、PrintWriterクラス、BufferedWriterクラスを使用します。

次のプログラムで確認してみましょう。

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

public class Main {

    public static void main(String[] args) {
        try {
            // FileWriterクラスのオブジェクトを生成する
            FileWriter file = new FileWriter("c:SampleTest.txt");

            // PrintWriterクラスのオブジェクトを生成する
            PrintWriter pw = new PrintWriter(new BufferedWriter(file));

            // ファイルに書き込む
            pw.println("apple");
            pw.println("orange");
            pw.println("melon");

            // ファイルを閉じる
            pw.close();

            System.out.print("書き込みに成功しました");

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

}

実行結果:

書き込みに成功しました

このようにして、パスを指定してファイルに書き込むことができました。ファイルに書き込む方法についてはこちらの記事でも詳しく解説しているので、ぜひ確認してください。

Javaでファイルに書き込み・出力する(新規/上書き/追記/文字コード)
更新日 : 2021年9月8日

まとめ

いかがでしたか?

  • パス(Path)でフォルダ(ディレクトリ)
  • ファイルの場所指定する方法

を解説しました。フォルダ(ディレクトリ)やファイルの場所指定して読み書きできるので、ぜひ活用してくださいね。もし、「パス(Path)」の使い方を忘れてしまったらこの記事を確認してください!

\業界最安級/
月額2,980円のプログラミングスクール

✔ 業界最安値の月定額2,980円
✔ 「Q&A掲示板」で平均30分以内に回答がもらえる
✔ 月に一度の「オンライン相談」で悩みを解決
✔ 教材の数は30種類以上
✔ 入会金不要+いつでも退会OK

公式サイトはこちら

フリーランスエンジニア。
システム開発からコンテンツ作成まで幅広く対応します。

連絡先はこちらです。
[email protected]

あなたの目的に合わせた
SAMURAI ENGINEERの運営サービス

SAMURAI ENGINEER Pro

未経験でも挫折しないプログラミングスクール

詳細はこちら

SAMURAI TERAKOYA

日本最大級のサブスク型オンラインITスクール

詳細はこちら

SAMURAI ENGINEER Freelance

「一人で稼げる」スキルを身につける

詳細はこちら
Close