Các chế độ và tùy chọn của Ruby File.open là gì?


186

Ruby's File.openlấy các chế độ và tùy chọn làm đối số. Tôi tìm thấy một danh sách đầy đủ các chế độ và tùy chọn ở đâu?


ruby-doc.org/core-2.0.0/IO.html#method-c-new-label-IO+Open+Mode - Liên kết đến trang này nằm trong câu trả lời của Daniels bên dưới nhưng bạn phải cuộn trang để đến nó Đây là liên kết trực tiếp đến phần có liên quan của tài liệu.
newUserNameĐây là

Câu trả lời:


377

Trong tài liệu mô-đun Ruby IO , tôi cho rằng.

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").

2
Cảm ơn danh sách của các moes. Nhưng đâu là danh sách cho các tùy chọn: File.open (tên tệp, mode = "r" [, opt]) => tệp
never_had_a_name

1
bạn đã tìm thấy nó ở đâu? Thật không may, tôi không thể tìm thấy File.open(filename, mode="r" [, opt])trong tài liệu.
Daniel O'Hara

@ vô dụng. trong api cho lớp File. Đi đến lớp "Tập tin", sau đó nhấp vào phương thức "mở".
never_had_a_name

1
Tôi cho rằng, đó là một số thử nghiệm, chưa được thực hiện. Và tôi vẫn không hiểu về những gì bạn nói API. Đưa ra một liên kết.
Nakilon

1
Nếu tôi có thể thêm một điều nhỏ cho "a +", thì Đọc bắt đầu ở đầu tệp, không chính xác ở cuối tệp (trong trường hợp có ai thắc mắc).
yoppuyoppu

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.