Apa saja mode dan opsi Ruby File.open?

186

Ruby File.openmenggunakan mode dan opsi sebagai argumen. Di mana saya menemukan daftar lengkap mode dan opsi?

never_had_a_name
sumber
ruby-doc.org/core-2.0.0/IO.html#method-c-new-label-IO+Open+Mode - Tautan ke halaman ini adalah dalam jawaban Daniels di bawah ini tetapi Anda harus menggulir halaman untuk sampai ke Itu. Inilah tautan langsung ke bagian dokumen yang relevan.
newUserNameHere

Jawaban:

377

Dalam dokumentasi modul Ruby IO , saya kira.

Mode |  Meaning
-----+--------------------------------------------------------
"r"  |  Read-only, starts at beginning of file  (default mode).
-----+--------------------------------------------------------
"r+" |  Read-write, starts at beginning of file.
-----+--------------------------------------------------------
"w"  |  Write-only, truncates existing file
     |  to zero length or creates a new file for writing.
-----+--------------------------------------------------------
"w+" |  Read-write, truncates existing file to zero length
     |  or creates a new file for reading and writing.
-----+--------------------------------------------------------
"a"  |  Write-only, starts at end of file if file exists,
     |  otherwise creates a new file for writing.
-----+--------------------------------------------------------
"a+" |  Read-write, starts at end of file if file exists,
     |  otherwise creates a new file for reading and
     |  writing.
-----+--------------------------------------------------------
"b"  |  Binary file mode (may appear with
     |  any of the key letters listed above).
     |  Suppresses EOL <-> CRLF conversion on Windows. And
     |  sets external encoding to ASCII-8BIT unless explicitly
     |  specified.
-----+--------------------------------------------------------
"t"  |  Text file mode (may appear with
     |  any of the key letters listed above except "b").
Daniel O'Hara
sumber
2
Terima kasih untuk daftar moes. Tetapi di mana daftar opsi: File.open (nama file, mode = "r" [, opt]) => file
never_had_a_name
1
Di mana Anda menemukan itu? Sayangnya, saya tidak dapat menemukannya File.open(filename, mode="r" [, opt])di dokumentasi.
Daniel O'Hara
@ float. di api untuk kelas File. Pergi ke kelas "File" lalu klik metode "buka".
never_had_a_name
1
Saya kira, ini masih eksperimental, yang belum diimplementasikan. Dan saya masih belum mengerti tentang API apa yang Anda ucapkan. Berikan tautan.
Nakilon
1
Jika saya dapat menambahkan satu hal kecil untuk "a +", Baca dimulai pada awal file, bukan pada akhir file (kalau-kalau ada yang bertanya-tanya).
yoppuyoppu
6

optbaru untuk ruby ​​1.9. Berbagai opsi didokumentasikan di IO.new: www.ruby-doc.org/core/IO.html

Shadwell
sumber
Sayangnya, tautan itu sekarang tampaknya sudah basi!
Carl Smotricz