File (クラス)
public abstract File
パッケージ: CURL.IO.FILE
直接継承しているサブクラス: LocalFile, StringFile, HttpFile

このクラスは、読み込みまたは書き込み用のストリームで開くことができるデータ リソースを表します。このクラスは最上位の抽象クラスです。特定の型のデータ リソース用の下位レベルのクラスがあります。たとえば、LocalFile はファイルシステムの File オブジェクトを表します。

通常は、サブクラス特有のメソッドを使用する必要がない限り、特定のサブクラスではなくこのクラスを使用することを推奨します。

注意事項

File オブジェクトを直接インスタンス化しないでください。代わりに、基礎となるファイルがすでに存在する場合は Url.resolve を使用して File オブジェクトを作成し、ファイルが存在しない場合は create-File または Url.instantiate-File を使用します (前者は基礎となるオブジェクトを実際に作成しますが、後者は基礎となるシステムでは何も作成せず、単に File オブジェクトを作成します)。

プロパティ
name:この File の URL を String として返します。
アクセサ public File.name:String
parent-dir:self を含む Directory を返します。
アクセサ public File.parent-dir:Directory
url:この File を識別する Url オブジェクトを返します。
アクセサ public abstract File.url:Url
when-last-accessed:該当する場合は最終アクセス日時を返し、そうでない場合は null を返します。
アクセサ public abstract File.when-last-accessed:#DateTime
when-last-modified:該当する場合は最終変更日時を返し、そうでない場合は null を返します。
アクセサ public abstract File.when-last-modified:#DateTime

メソッド
append-open:追加する self を開きます。
public abstract {File.append-open
create?:bool = true,
create-mode:int = 0o666,
character-encoding:CharEncoding = CharEncoding.none-specified,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, char }
}:TextOutputStream
append-open-byte:バイト ストリームに追加する self を開きます。
public abstract {File.append-open-byte
create?:bool = true,
create-mode:int = 0o666,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, byte }
}:ByteOutputStream
async-read-open:テキスト入力用に self を非同期に開き、開いた TextInputStream または例外を含む AsyncFileOpenEvent で指定されたイベント ハンドラを呼び出します。
public {File.async-read-open
character-encoding:CharEncoding = CharEncoding.none-specified,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, char },
unread-size:int = {min 4, buffer-size div 4},
event-handler:EventHandler,
...:EventHandler
}:AsyncFileOpener
async-read-open-byte:バイト入力用に self を非同期に開き、開いた ByteInputStream または例外を含む AsyncFileOpenEvent に対するイベント ハンドラを呼び出します。
public {File.async-read-open-byte
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, byte },
unread-size:int = {min 4, buffer-size div 4},
event-handler:EventHandler,
...:EventHandler
}:AsyncFileOpener
clone:self の簡易コピーを返します。
public abstract {File.clone}:File
read-open:入力用の self を開きます。
public abstract {File.read-open
character-encoding:CharEncoding = CharEncoding.none-specified,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, char },
unread-size:int = {min 4, buffer-size div 4}
}:TextInputStream
read-open-byte:バイト ストリーム入力用に self を開きます。
public abstract {File.read-open-byte
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, byte },
unread-size:int = {min 4, buffer-size div 4}
}:ByteInputStream
write-open:出力用に self を開きます。
public abstract {File.write-open
create?:bool = true,
create-mode:int = 0o666,
error-if-exists?:bool = false,
truncate-if-exists?:bool = true,
character-encoding:CharEncoding = CharEncoding.none-specified,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, char }
}:TextOutputStream
write-open-byte:バイト ストリーム出力用に self を開きます。
public abstract {File.write-open-byte
create?:bool = true,
create-mode:int = 0o666,
error-if-exists?:bool = false,
truncate-if-exists?:bool = true,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, byte }
}:ByteOutputStream
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize




プロパティ詳細
name (アクセサ)
アクセサ public File.name:String

この File の URL を String として返します。



parent-dir (アクセサ)
アクセサ public File.parent-dir:Directory

self を含む Directory を返します。



url (アクセサ)
アクセサ public abstract File.url:Url

この File を識別する Url オブジェクトを返します。



when-last-accessed (アクセサ)
アクセサ public abstract File.when-last-accessed:#DateTime

該当する場合は最終アクセス日時を返し、そうでない場合は null を返します。



when-last-modified (アクセサ)
アクセサ public abstract File.when-last-modified:#DateTime

該当する場合は最終変更日時を返し、そうでない場合は null を返します。






メソッド詳細
append-open (メソッド)
public abstract {File.append-open
create?:bool = true,
create-mode:int = 0o666,
character-encoding:CharEncoding = CharEncoding.none-specified,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, char }
}:TextOutputStream

追加する self を開きます。

create?: true (既定値) の場合、基礎となるファイルがまだ存在しなければ、それを作成することを意味します。
create-mode: 作成された場合にファイルに割り当てられるアクセス権を示します。現在、UNIX システムでは、この引数は open()mkdir() の呼び出しに単に直接パスされます。UNIX システムでは、最終のファイルプロテクションを実行するため create-mode は umask によって変更されます。
character-encoding: ファイルへの書き込みで使用する文字エンコーディングを示します。CharEncoding を参照してください。指定しない場合、文字エンコーディングは File.read-open などで決定されます。
buffer-size: バッファに格納される char の最小数。buffer-size0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。

戻り値

このメソッドが開く TextOutputStream を返します。

注意事項

通常、このメソッドが返す TextOutputStream でのシークは失敗します。

注意事項

返されるストリームは、いかなる改行処理も実行しません。改行処理が必要な場合は、NewlineFilterTextOutputStream または SeekableNewlineFilterTextOutputStream を使い、返されるストリームを改行することができます。


append-open-byte (メソッド)
public abstract {File.append-open-byte
create?:bool = true,
create-mode:int = 0o666,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, byte }
}:ByteOutputStream

バイト ストリームに追加する self を開きます。

create?: true (既定値) の場合、基礎となるファイルがまだ存在しなければ、それを作成することを意味します。
create-mode: 作成された場合にファイルに割り当てられるアクセス権を示します。現在、UNIX システムでは、この引数は open()mkdir() の呼び出しに単に直接パスされます。UNIX システムでは、最終のファイルプロテクションを実行するため create-mode は umask によって変更されます。
buffer-size: バッファに格納される char の最小数。buffer-size0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。0 でない場合、BufferedByteOutputStream が返されます。

戻り値

このメソッドが開く ByteOutputStream を返します。

注意事項

通常、このメソッドが返す ByteOutputStream でのシークは失敗します。


async-read-open (メソッド)
public {File.async-read-open
character-encoding:CharEncoding = CharEncoding.none-specified,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, char },
unread-size:int = {min 4, buffer-size div 4},
event-handler:EventHandler,
...:EventHandler
}:AsyncFileOpener

テキスト入力用に self を非同期に開き、開いた TextInputStream または例外を含む AsyncFileOpenEvent で指定されたイベント ハンドラを呼び出します。

character-encoding: ファイルの読み込みで使用する文字エンコーディングを示します。CharEncoding を参照してください。指定されない場合、可能であれば文字エンコーディングはストリーム内の最初の数バイトから解釈されます。このような解釈ができない場合、既定の CharEncoding.utf8 エンコーディングが使用されます。
buffer-size: バッファに格納される char の最小数。buffer-sizeunread-size がどちらも 0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。
unread-size: 効果的に読み取り不可能な char の最小数。buffer-sizeunread-size がどちらも 0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。
event-handler: AsyncFileOpenEvent を受け取る EventHandler。少なくとも 1 つを指定する必要があります。
...: AsyncFileOpenEvent を受け取るオプションの EventHandler

戻り値

非同期オープンを制御できる AsyncFileOpener を返します。


async-read-open-byte (メソッド)
public {File.async-read-open-byte
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, byte },
unread-size:int = {min 4, buffer-size div 4},
event-handler:EventHandler,
...:EventHandler
}:AsyncFileOpener

バイト入力用に self を非同期に開き、開いた ByteInputStream または例外を含む AsyncFileOpenEvent に対するイベント ハンドラを呼び出します。

buffer-size: バッファに格納される char の最小数。buffer-sizeunread-size がどちらも 0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。どちらも 0 でない場合、BufferedByteInputStream が作成されます。
unread-size: 効率よく読み込むことができない char の最小数。buffer-sizeunread-size がどちらも 0 の場合、できるだけバッファに格納されないストリームの作成を試みます。一方が 0 でない場合には BufferedByteInputStream が作成されます。
event-handler: AsyncFileOpenEvent を受け取る EventHandler。少なくとも 1 つを指定する必要があります。
...: AsyncFileOpenEvent を受け取るオプションの EventHandler

戻り値

非同期オープンを制御できる AsyncFileOpener を返します。


clone (メソッド)
public abstract {File.clone}:File

self の簡易コピーを返します。



read-open (メソッド)
public abstract {File.read-open
character-encoding:CharEncoding = CharEncoding.none-specified,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, char },
unread-size:int = {min 4, buffer-size div 4}
}:TextInputStream

入力用の self を開きます。

character-encoding: ファイルの読み込みで使用する文字エンコーディングを示します。CharEncoding を参照してください。指定されない場合、可能であれば文字エンコーディングはストリーム内の最初の数バイトから解釈されます。このような解釈ができない場合、既定の CharEncoding.utf8 エンコーディングが使用されます。
buffer-size: バッファに格納される char の最小数。buffer-sizeunread-size がどちらも 0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。
unread-size: 効果的に読み取り不可能な char の最小数。buffer-sizeunread-size がどちらも 0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。

戻り値

このメソッドがオープンする TextInputStream を返します。

注意事項

返されるストリームは、いかなる改行処理も実行しません。改行処理が必要な場合は、NewlineFilterTextInputStream または SeekableNewlineFilterTextInputStream を使い、返されるストリームを改行することができます。


read-open-byte (メソッド)
public abstract {File.read-open-byte
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, byte },
unread-size:int = {min 4, buffer-size div 4}
}:ByteInputStream

バイト ストリーム入力用に self を開きます。

buffer-size: バッファに格納される char の最小数。buffer-sizeunread-size がどちらも 0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。どちらも 0 でない場合、BufferedByteInputStream が返されます。
unread-size: 効率よく読み込むことができない char の最小数。buffer-sizeunread-size がどちらも 0 の場合は、できるだけバッファに格納されないストリームの作成を試みます。一方が 0 でない場合には BufferedByteInputStream が返されます。

戻り値

このメソッドがオープンする ByteInputStream を返します。


write-open (メソッド)
public abstract {File.write-open
create?:bool = true,
create-mode:int = 0o666,
error-if-exists?:bool = false,
truncate-if-exists?:bool = true,
character-encoding:CharEncoding = CharEncoding.none-specified,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, char }
}:TextOutputStream

出力用に self を開きます。

create?: true (既定値) の場合、基礎となるファイルがまだ存在しなければ、それを作成することを意味します。
create-mode: 作成された場合にファイルに割り当てられるアクセス権を示します。現在、UNIX システムでは、この引数は open()mkdir() の呼び出しに単に直接パスされます。UNIX システムでは、最終のファイルプロテクションを実行するため create-mode は umask によって変更されます。
error-if-exists?: true の場合、開こうとしているファイルがすでに存在すればこのメソッドで ExistingFileException がスローされます。
truncate-if-exists?: true (既定値) の場合、元のファイルが既に存在すれば内容は削除されることを示します。false の場合、ファイル内容は削除されず、データは現在の場所からファイルに書き込まれます。最初の場所は常にファイルの始点です。
character-encoding: ファイルへの書き込みに使用するエンコーディングを示します。CharEncoding を参照してください。指定しない場合は、既定の CharEncoding.utf8 エンコーディングが使用されます。
buffer-size: バッファに格納される char の最小数。buffer-sizeunread-size がどちらも 0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。

戻り値

このメソッドが開く TextOutputStream を返します。

注意事項

create? = falseerror-if-exists? = true を同時に指定しても意味がありません。

注意事項

File.append-open も参照してください。

注意事項

返されるストリームは、いかなる改行処理も実行しません。改行処理が必要な場合は、NewlineFilterTextOutputStream または SeekableNewlineFilterTextOutputStream を使い、返されるストリームを改行することができます。


write-open-byte (メソッド)
public abstract {File.write-open-byte
create?:bool = true,
create-mode:int = 0o666,
error-if-exists?:bool = false,
truncate-if-exists?:bool = true,
buffer-size:int = {calculate-instances-per-memory-size default-buffer-memory-size, byte }
}:ByteOutputStream

バイト ストリーム出力用に self を開きます。

create?: true (既定値) の場合、基礎となるファイルがまだ存在しなければ、それを作成することを意味します。
create-mode: 作成された場合にファイルに割り当てられるアクセス権を示します。現在、UNIX システムでは、この引数は open()mkdir() の呼び出しに単に直接パスされます。UNIX システムでは、最終のファイルプロテクションを実行するため create-mode は umask によって変更されます。
error-if-exists?: true の場合、開こうとしているファイルがすでに存在すればこのメソッドで ExistingFileException がスローされます。
truncate-if-exists?: true (既定値) の場合、元のファイルが既に存在すれば内容は削除されることを示します。false の場合、ファイル内容は削除されず、データは現在の場所からファイルに書き込まれます。最初の場所は常にファイルの始点です。
buffer-size: バッファに格納される char の最小数。buffer-sizeunread-size がどちらも 0 の場合、アンバッファ ストリームの作成が可能であればこれを行います。どちらも 0 でない場合、BufferedByteOutputStream が返されます。

戻り値

このメソッドが開く ByteOutputStream を返します。

注意事項

create? = falseerror-if-exists? = true を同時に指定しても意味がありません。

注意事項

File.append-open-byte も参照してください。