Fileクラス

Fileクラスは外部テキストファイルのリード/ライトに便利です。

AccessMode 列挙子

Fileクラスには、file.openとともに使用してファイルを開いた時のモードを設定する列挙子があります。これらの項目は"open"コマンドに対する引数であり、前に"File"がつきます。値は次の通りです:

AccessModeの値 解説

ReadOnly

ファイルを読みとり専用で開く

WriteOnly

ファイルを書き込み専用で開く。Appendと合わせて使用すると、ファイルは丸め処理されない。それのみで使用(またはTruncateと共に使用)すると、ファイルは丸め処理される。

ReadWrite

ファイルを書き込み/読みとりモードで開く。ファイルは丸め処理されない。

Append

ファイルをアペンドモードで開く(ファイルをアペンド可能にするには WriteOnly と合わせて使用する必要がある: WriteOnly | Append)ログ ファイルへの書き出しに有用。

Truncate

ファイルを丸め処理する

Translate

Windowsテキストファイルでのキャリッジリターンおよびラインフィードの変換を有効にする

"f" という名前のファイルオブジェクトを書き込み専用で開くには、次のコマンドを実行します:

f.open(File.WriteOnly | File.Translate);

WindowsファイルにはTranslateフラグが必要です。

Static 関数

メソッドと異なり、static関数は特定のオブジェクトを参照しません。これらのファイルを使用するには、前に"File."を付ける必要があります。これにより、これらの関数がFileクラスにリンクされていることが示されます。

Static関数 解説

exists(filename)

ブーリアン: fileName が存在すれば true、存在しなければ false(filename = 文字列)

remove(filename)

filenameが存在すれば、削除する。存在しなければ例外を返す(filename=文字列)

write(filename, content)

filenameにcontentを書き込む。ファイルが既に存在する場合、元のコンテンツを完全に置き換える。ファイルに書き込みできない場合、例外を返す。

filename = 文字列; content = 文字列

read(filename)

可能であればファイルのコンテンツを読みとり、返す。そうでない場合例外を返す。

filename = 文字列

isFile(filename)

ブーリアン: filename がファイルであれば true、そうでなければ false

isDir(filename)

ブーリアン: filename がフォルダであれば true、そうでなければ false

例えば、"logfile.txt"という名前のファイルが存在するかチェックするには、次のコマンドを実行します:

File.exists(“logfile.txt”);

File クラス プロパティ

Fileクラスのすべてのプロパティは読みとり専用です。

Fileクラスプロパティ タイプ 解説

名前

文字列 拡張子を含むファイル名

path

文字列 ファイルのパス

fullName

文字列 ファイルの完全な名前(パス、名前、および拡張子)

baseName

文字列 ファイルのみの名前(パスや拡張子を除く)

extension

文字列 ファイルの拡張子

exists

ブーリアン ファイルが存在すればtrue;そうでなければfalse

readable

ブーリアン ファイルが読みとり可能であればtrue

writable

ブーリアン ファイルが書き込み可能であればtrue

executable

ブーリアン ファイルが実行可能であればtrue

hidden

ブーリアン ファイルが非表示であればtrue

eof

ブーリアン ファイルの読みとりが終わりに達していればtrue

created

日付 ファイル作成時間

lastModified

日付 ファイルが最後に変更された時間

lastRead

日付 ファイルが最後に読まれた時間

size

線の本数 ファイルのサイズ;バイト

File クラス メソッド

Fileクラスメソッド 解説 データを返す

new File(filename)

ファイル名を参照するファイルオブジェクトを作成;filename=文字列 いいえ

open(accessMode)

名前付きaccessModeを使ってファイルを開く いいえ

close()

ファイルを閉じる いいえ

readByte()

ファイルから1バイトを読みとる;数値を返す はい

read()

ファイルのコンテンツを文字列で返す;読みとれない場合例外を返す はい

readLine()

可能であればファイルから 1 行を読み取り、不可能であれば例外を返す。最後の空白は保持される。 はい

readLines()

ファイルのコンテンツを各行1つの文字列の配列として返す;改行は文字列から削除される はい

writeByte(byte)

1バイトをファイルに書き込む いいえ

write(data, length)

length文字をdataからファイルに書き込む いいえ

writeLine(data)

"data"行をファイルに書き込み、改行を追加 いいえ

copyTo(newName)

現在のファイルを "newname" にコピーし、そのコピーが成功したら true を返す はい

これらのコマンドの使用例を以下に示します:

f = new File(a.path + "/pressure.txt");

f.open(File.WriteOnly | File.Translate);

f.writeLine("Velocity, Pressure");

f.close();

この例の解説は以下の通りです:

>>>次の行は"f" という名前のファイルオブジェクトを作成し、"pressure.txt"という名前を割り当てます。

f = new File("pressure.txt");

>>>その後ファイルが開かれ、2個のAccessMode列挙子を使ってこのファイルが読みとり専用であることが示され、これがWindows(Translate修飾子)で使用されます:

f.open(File.WriteOnly | File.Translate);

>>>"Velocity"と"Pressure"という単語が列ヘッダとしてファイルに書き込まれます:

f.writeLine("Velocity, Pressure");

>>>ファイルが閉じます:

f.close();