The second parameter means the open mode of the file.
CSV.open("path/to/file.csv", "wb") do |csv|
csv << ["row", "of", "CSV", "data"]
csv << ["another", "row"]
# ...
end
This are the available modes:
-
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, each write call appends data at end of file. Creates a new file for writing if file does not exist. -
a+: Read-write, each write call appends data at end of file. Creates a new file for reading and writing if file does not exist.
The following modes must be used separately, and along with one or more of the modes seen above.
-
b: Binary file mode -
t: Text file mode
👉 ruby-doc