Java アドバンス

Java でのファイル作成

1. ファイルの新規作成

Javaでは、File クラスの createNewFile() メソッドを使用して新しいファイルを作成できます。

このメソッドは以下の値を返します:

  • true - ファイルが正常に作成された場合
  • false - ファイルが既に存在する場合

なお、このメソッドは try...catch ブロックで囲む必要があります。これは、何らかの理由でファイルが作成できない場合に IOException をスロー(例外を投げる)するため、その例外を適切にハンドリングする必要があるからです。

例:

import java.io.File;       // Fileクラスをインポート
import java.io.IOException; // エラーハンドリングのためのIOExceptionをインポート

public class CreateFile {
  public static void main(String[] args) {
    try {
      File myObj = new File("filename.txt"); // Fileオブジェクトを作成
      if (myObj.createNewFile()) {           // ファイルの作成を試みる
        System.out.println("ファイルが作成されました: " + myObj.getName());
      } else {
        System.out.println("ファイルは既に存在します。");
      }
    } catch (IOException e) {
      System.out.println("エラーが発生しました。");
      e.printStackTrace(); // エラーの詳細を出力
    }
  }
}

出力結果:

ファイルが作成されました: filename.txt

解説

このプログラムは filename.txt という名前のファイルを作成しようと試みます。ファイルが存在しない場合は新規に作成され、成功メッセージが表示されます。既にファイルが存在する場合は、代わりに "ファイルは既に存在します。" というメッセージが表示されます。

       注記:createNewFile() メソッドは 空の ファイルを作成するだけです。中身にテキストを追加することはありません。ファイルにテキストを書き込む方法については、次のチャプターで学習します。

2. 特定のフォルダにファイルを作成する

特定のディレクトリ(フォルダ)にファイルを作成する場合(ディレクトリへのアクセス権限が必要です)、ファイルのパス(Path)を指定します。Windows環境でバックスラッシュ(円記号 \)を使用する場合は、エスケープ文字として二重のバックスラッシュ \\ を使用する必要がある点に注意してください。MacやLinuxでは、通常のパス形式(/Users/name/filename.txt など)を記述できます。

Windowsでの例:

File myObj = new File("C:\\Users\\MyName\\filename.txt");