Jakie są tryby i opcje Ruby File.open?

186

Ruby File.openprzyjmuje jako argumenty tryby i opcje. Gdzie znajdę pełną listę trybów i opcji?

never_had_a_name
źródło
ruby-doc.org/core-2.0.0/IO.html#method-c-new-label-IO+Open+Mode - Link do tej strony znajduje się w odpowiedzi Daniela poniżej, ale musisz przewinąć stronę, aby przejść do to. Oto bezpośredni link do odpowiedniej części dokumentów.
newUserNameHere

Odpowiedzi:

377

W dokumentacji modułu Ruby IO , jak sądzę.

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
źródło
2
Dzięki za listę mun. Ale gdzie znajduje się lista opcji: File.open (nazwa pliku, tryb = "r" [, opt]) => plik
nigdy_nazwa_nazwa
1
Gdzie to znalazłeś? Niestety nie mogę znaleźć File.open(filename, mode="r" [, opt])w dokumentacji.
Daniel O'Hara,
@floatless. w interfejsie API dla klasy File. Przejdź do klasy „Plik”, a następnie kliknij metodę „otwórz”.
never_had_a_name
1
Przypuszczam, że jest to eksperymentalny, który nie został jeszcze zaimplementowany. I wciąż nie rozumiem, jakim interfejsem API mówisz. Podaj link.
Nakilon,
1
Jeśli mogę dodać jedną małą rzecz do „a +”, Read zaczyna się na początku pliku, a nie dokładnie na końcu pliku (na wypadek, gdyby ktoś się zastanawiał).
yoppuyoppu
6

optjest nowy dla Ruby 1.9. Różne opcje są udokumentowane w IO.new: www.ruby-doc.org/core/IO.html

Shadwell
źródło
Niestety ten link wydaje się teraz nieaktualny!
Carl Smotricz