2013-07-25 47 views
9

我想我错过了这里真正明显的一些东西,但是大家为CSV.open方法提出的第二个参数是什么,在这种情况下,它的'wb',我看过其他的字母放在这里,但是没有人真正解释它的作用。它有什么作用?在ruby中,CSV.open()的第二个参数/参数是什么?

CSV.open("path/to/file.csv", "wb") do |csv| 
    csv << ["row", "of", "CSV", "data"] 
    csv << ["another", "row"] 
    # ... 
end 

ruby​​ doc似乎没有给出任何解释。 http://www.ruby-doc.org/stdlib-2.0/libdoc/csv/rdoc/CSV.html

谢谢!

+0

http://apidock.com/ruby/IO/open/class –

回答

18

IO Open Mode文档:

“R”只读,开始于文件(默认方式)的开始。

“r +”是可读写的,从文件开始处开始。

“w”只写,将现​​有文件 截断为零长度或创建一个用于写入的新文件。

“w +”读写,将现有文件截断为零长度 或创建一个用于读写的新文件。

“a”只写,从文件末尾开始,如果文件存在,则 否则会创建一个用于写入的新文件。

“a +”读写,如果文件存在,则从文件末尾开始,否则将创建一个新的读取文件和 写入。

+1

对于任何懒得跟随链接的人:'b'后缀表示“二进制”文件模式(“在Windows上抑制EOL <-> CRLF转换。除非明确指定,否则将外部编码设置为ASCII-8BIT。“); 't'后缀的意思是“文本”文件模式 – Alec

相关问题