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();