new(path, mode = "r", perm = 0666) -> File
[permalink][rdoc][edit]open(path, mode = "r", perm = 0666) -> File
open(path, mode = "r", perm = 0666) {|file| ... } -> object
-
path で指定されるファイルをオープンし、File オブジェクトを生成して返します。
path が整数の場合はファイルディスクリプタとして扱い、それに対応する File オブジェクトを生成して返します。IO.open と同じです。ブロックを指定して呼び出した場合は、File オブジェクトを引数としてブロックを実行します。ブロックの実行が終了すると、ファイルは自動的にクローズされます。ブロックの実行結果を返します。
- [PARAM] path:
- ファイルを文字列で指定します。整数を指定した場合はファイルディスクリプタとして扱います。
- [PARAM] mode:
- モードを文字列か定数の論理和で指定します。Kernel.#open と同じです。
- [PARAM] perm:
- ファイルを生成する場合のファイルのパーミッションを整数で指定します。Kernel.#open と同じです。
- [EXCEPTION] Errno::EXXX:
- ファイルのオープンに失敗した場合に発生します。
例: File.new による読み込みモードでのファイルオープン
f = File.new("testfile", "r") f.class # => File f.close
例: File.open による読み込みモードでのファイルオープン
f = File.open("testfile", "r") f.class # => File f.close
例: File.open による書き込みモードでのファイルオープン
File.open("testfile", "w", 0755) { |f| f.print "test" } File.read("testfile") # => "test"