テキストファイル入出力(Java を使用)

サイト内の関連ページ

関連情報

Java 25(Temurin 25 JDK) のインストール

Eclipse Temurin(Adoptium)のインストールを行い、Javaのプログラムをコンパイル・実行する環境を整える。扱う環境は、Windows搭載パソコンである。現時点(2026年6月)での最新LTS版である Java 25(Temurin 25 JDK)を推奨する。

[Windows での Java 25(Temurin 25 JDK) のインストール手順を見るには、ここをクリック]

Windows での Java 25(Temurin 25 JDK) のインストール

以下のいずれかの方法で Java 25(Temurin 25 JDK)をインストールする。JDKがインストール済みの場合、この手順は不要である。

方法 1:winget によるインストール

インストールコマンドの実行方法

管理者権限コマンドプロンプトを起動する(手順:Windowsキーまたはスタートメニュー → cmd と入力 → 右クリック → 「管理者として実行」)。そして、コマンド全体をコマンドプロンプトにコピー&ペーストする。

Temurin の Windows インストーラー(.msi)は、ユーザー単位ではなくマシン単位でインストールされる(1台に1つのインストール)。そのため、システム全体(全ユーザー向け)にインストールするには管理者権限が必要である。インストール完了後、コマンドプロンプトを再起動するとPATHが反映される。

REM Java 25(Temurin 25 JDK) をインストール(PATH と JAVA_HOME を更新)
winget install --id EclipseAdoptium.Temurin.25.JDK -e --silent --accept-source-agreements --accept-package-agreements --override "ADDLOCAL=FeatureMain,FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome INSTALLDIR=\"C:\Program Files\Eclipse Adoptium\jdk-25\" /quiet"

上記の --override 内の指定の意味は次のとおりである。FeatureEnvironment はPATH環境変数の更新、FeatureJavaHomeJAVA_HOME 環境変数の更新、FeatureJarFileRunWith は .jar ファイルとJavaアプリケーションの関連付けである。INSTALLDIR はインストール先フォルダの指定である。

方法 2:インストーラーによるインストール

  1. Adoptium公式サイト(https://adoptium.net/temurin/releases/)にアクセスし、Version として「25 - LTS」、Operating System として「Windows」を選び、.msi 形式のWindows用インストーラーをダウンロードする。
  2. ダウンロードした .msi ファイルを実行し、インストールプログラムを起動する。
  3. ライセンス条項を確認し、同意できる場合はチェックを入れて次へ進む。
  4. 「Installation Scope」画面では「Install for all users of this machine」を選ぶ
  5. 「Custom Setup(カスタムセットアップ)」画面で、インストールする機能を選択する。既定では「Add to PATH(PATH環境変数への追加)」と「Associate .jar」(.jarファイルの関連付け)が有効になっている。さらに、ツリー内でバツ印(×)が付いている「Set JAVA_HOME variable(JAVA_HOME環境変数の更新)」をクリックして有効に変更することを推奨する。これらを有効にしないと、コマンドプロンプトから java コマンドを実行できなかったり、開発ツールがJDKを見つけられなかったりする。
  6. 「次へ (Next)」をクリックし、続いて「インストール (Install)」をクリックしてインストールを開始する。完了後「Finish」で閉じる。

インストールの確認

コマンドプロンプトで以下を実行する。

java --version

バージョン番号(例:openjdk 25.x.x)が表示されればインストール成功である。「'java' は、内部コマンドまたは外部コマンドとして認識されていません。」と表示される場合は、インストールが正常に完了していないか、PATHが反映されていない(コマンドプロンプトを再起動して再度確認する)。

あわせて、コンパイラと JAVA_HOME も確認しておくとよい。

javac --version
echo %JAVA_HOME%

Eclipse のインストール

Eclipse をインストールする。扱う環境は、Windows搭載パソコンである。

[Windows での Eclipse のインストール手順を見るには、ここをクリック]

Windows での Eclipse のインストール

以下のいずれかの方法で Java 25(Temurin 25 JDK)をインストールする。JDKがインストール済みの場合、この手順は不要である。

方法 1:winget によるインストール

インストールコマンドの実行方法

管理者権限コマンドプロンプトを起動する(手順:Windowsキーまたはスタートメニュー → cmd と入力 → 右クリック → 「管理者として実行」)。そして,コマンド全体をコマンドプロンプトにコピー&ペーストする。

REM Temurin 25 JDK をインストール
winget install --id EclipseAdoptium.Temurin.25.JDK -e --accept-source-agreements --accept-package-agreements

winget が使えない場合や,インストール先・パッケージ種類を画面で選びながら導入したい場合は,次の方法を用いる。

方法 2:インストーラーによるインストール

公式サイトからダウンロードしてインストールできる。詳しくはhttps://www.kkaneko.jp/tools/win/eclipse.htmlで説明している。

Eclipse の初期設定、使用方法の基本

詳しくはhttps://www.kkaneko.jp/tools/win/eclipse.htmlで説明している。

標準入力から1行単位での読み込み(BufferedReader の readLine() メソッドを利用)

要点

標準入力から1行単位での読み込むと,そのまま標準出力に書き出す.

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

public class Main {
    /* 標準入力から1行単位での読み込むと,そのまま標準出力に書き出す. */
    private static String welcome = "入力してください:";
    private static String prompt = "> ";
    
    public static void main(String[] args) {
        try{
            String line;
            BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
            System.out.println("入力してください:");
            System.out.print(prompt);
            while( (line=buf.readLine()) != null ) {
                System.out.println(line);
                System.out.print(prompt);
            }
        }    
        catch(IOException e) {
            e.printStackTrace();
            System.exit(1);
        }
    }
}

【Windows での実行】

Windows で,ファイル Main.java を編集し実行するために,次のコマンドを, コマンドプロンプトで実行する.

cd %LOCALAPPDATA%
notepad Main.java
javac -encoding UTF-8 Main.java
java Main

テキストファイルから1行単位での読み込み,書き出し(FileInputStream, FileOutputStream を利用)

【キーワード】 ファイルオープン,テキストファイルの読み込みと書き出し,日本語文字コード,行単位での読み込みと書き出し

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class Main {
    private static String inFileName = "c:\\in.txt";
    private static String outFileName = "out.txt";
    /* Shift_JIS, ISP-2022-JP, EUC-JP Windows-31J */
    /* 出力時に JISAutoDetect の指定は不可 */
    private static String outFileCoding = "Shift_JIS";
    
    /* テキストファイルの読み出しと書き込みのサンプルプログラム */
    /* (注)バイナリファイルのときは,DataInputStream, DataOutputStream */
    public static void main(String[] args) {
        try{
            String line;
            BufferedReader buf =
                new BufferedReader( new InputStreamReader( new FileInputStream( inFileName ), "JISAutoDetect" ) );
            /* ファイルが存在しない場合には新たに作成.存在する場合には上書き */
            BufferedWriter outFile =
                                new BufferedWriter( new OutputStreamWriter( new FileOutputStream( outFileName ), outFileCoding ) );
            while( (line=buf.readLine()) != null ) {
                outFile.write(line);
                outFile.newLine();
                System.out.println(line);
            }
            buf.close();
            outFile.flush();
            outFile.close();
        }    
        catch(IOException e) {
            e.printStackTrace();
            System.exit(1);
        }
    }
}

【Windows での実行】

Windows で,ファイル Main.java を編集し実行するために,次のコマンドを, コマンドプロンプトで実行する.

cd %LOCALAPPDATA%
notepad Main.java
javac -encoding UTF-8 Main.java
powershell -command start-process notepad.exe "c:\\in.txt" -verb runas
java Main
type out.txt