java.io.File クラスの使い方

java.io.Fileクラスは、ファイル及びディレクトリのパスの抽象表現クラスである。Fileクラスのインスタンスは不変である。一度作成されたFileオブジェクトで表される抽象パス名は変更されない。

目次

  1. クラスの継承
  2. 実装インタフェース
  3. フィールド
    1. pathSeparator
  4. メソッド
    1. コンストラクタ
    2. delete
    3. exists
    4. getAbsolutePath
    5. getParent
    6. isDirectory
    7. isFile
    8. lastModified
    9. list
    10. listFiles
    11. mkdir
    12. mkdirs
    13. setLastModified
  5. 関連記事

クラスの継承

java.io.File クラスの継承図を次に示す。

実装インタフェース

java.io.File クラスは、以下に示すインタフェースを実装している。

フィールド

java.io.File クラスのフィールドを次に示す。

pathSeparator

pathSeparator フィールドは、システムに依存するパス区切り文字を示す。static なフィールドなので、java.io.File クラスをインスタンス化せずに使える。

static String pathSeparator

pathSeparator フィールドの使用例を次に示す。

import java.io.File;

public class Example {
  public static void main(String args[]) {
        System.out.println(File.pathSeparator);
    }
}

上記プログラムの実行結果を次に示す。実行結果はOSによって異なることがある。

$ java Example
:

メソッド

java.io.Fileクラスには次のメソッドがある。

java.io.Fileクラスのメソッド
メソッド説明
delete ファイル又はディレクトリを削除する。
exists ファイル又はディレクトリが存在するかどうかを返す。
getAbsolutePath 絶対パスを返す。
getParent 親のパス名を返す。
isDirectory ディレクトリかどうかを返す。
isFile ファイルかどうかを返す。
lastModified ファイルが最後に変更された時刻を返す。
list ディレクトリに含まれるファイル及びディレクトリの一覧をString型の配列で返す。
listFiles ディレクトリに含まれるファイル及びディレクトリの一覧をFile型の配列で返す。
mkdir ディレクトリを作成する。
mkdirs 親ディレクトリもまとめてディレクトリを作成する。
setLastModified 最終更新日時を設定する。

コンストラクタ

java.io.Fileクラスには次のコンストラクタがある。

java.io.Fileクラスのコンストラクタ
コンストラクタ説明
File(String path)指定したパス名文字列を抽象パス名に変換して、新しいFileのインスタンスを生成する。
File(String parent, String child)親パス名文字列及び子パス名文字列から新しいFileのインスタンスを生成する。

delete

ファイル又はディレクトリを削除する。

boolean delete()

Javaでファイルを削除する例を示す。

File file = new File("C:\\tmp\\foo.txt");
if (file.exists()) {
  file.delete();
}

existsメソッド

ファイル又はディレクトリが存在するかどうかを返す。

boolean exists()

Javaでファイルが存在するか確認する例を示す。

File dir = new File("C:\\tmp");
if (dir.exists()) {
  dir.delete();
}

getAbsolutePath

絶対パスを返す。

String getAbsolutePath()

getParentメソッド

親のパス名を返す。

String getParent()

isDirectoryメソッド

ディレクトリかどうかを返す。

boolean isDirectory()

isFileメソッド

ファイルかどうかを返す。

boolean isFile()

lastModified

ファイルが最後に変更された時刻を返す。

long lastModified()

listメソッド

ディレクトリに含まれるファイル及びディレクトリの一覧をString型の配列で返す。ディレクトリが空の場合、空の配列を返す。

String[] list()

listFiles

ディレクトリに含まれるファイル及びディレクトリの一覧をFile型の配列で返す。

File[] listFiles()

Javaでディレクトリに含まれるファイルを取得する例を示す。

File dir = new File("C:\\Users");
File[] files = dir.listFiles();

for (int i = 0; i < files.length; i++) {
  System.out.println(files[i]);
}

mkdir

ディレクトリを作成する。

boolean mkdir()

Javaでディレクトリを作成する例を示す。

File newdir = new File("C:\\tmp");
newdir.mkdir();

mkdirs

親ディレクトリもまとめてディレクトリを作成する。

boolean mkdirs()

Javaで親ディレクトリもまとめてディレクトリを作成する例を示す。

File newdir = new File("C:\\tmp\\sub");
newdir.mkdirs();

setLastModified

最終更新日時を設定する。

boolean setLastModified(long time)

Javaでファイルの最終更新日時を設定する例を示す。

File file = new File("C:\\tmp\\foo.txt");
Calendar cal = new Calendar.getInstance();
cal.clear();
cal.set(2014, 7, 14, 22, 26, 56);
file.setLastModifed(cal.getTimeInMills());

関連記事