本文簡要介紹ruby語言中 CSV.generate
的用法。
用法
generate(csv_string, **options) {|csv| ... }
generate(**options) {|csv| ... }
-
參數
csv_string
如果給定,則必須是 String 對象;默認為一個新的空字符串。 -
參數
options
如果給出,應該生成選項。請參閱生成選項。
通過 CSV.new(csv_string, **options)
創建一個新的 CSV 對象;使用 CSV 對象調用塊,該塊可以修改該塊;返回從 CSV 對象生成的字符串。
請注意,此方法修改了傳遞的字符串。如果必須保留字符串,則傳遞 csv_string
.dup。
此方法有一個附加選項::encoding
,如果沒有指定 str
,它會為輸出設置基數 Encoding
。如果您計劃輸出非 ASCII 兼容數據, CSV
需要此提示。
添加行:
input_string = "foo,0\nbar,1\nbaz,2\n"
output_string = CSV.generate(input_string) do |csv|
csv << ['bat', 3]
csv << ['bam', 4]
end
output_string # => "foo,0\nbar,1\nbaz,2\nbat,3\nbam,4\n"
input_string # => "foo,0\nbar,1\nbaz,2\nbat,3\nbam,4\n"
output_string.equal?(input_string) # => true # Same string, modified
將行添加到新字符串中,保留舊字符串:
input_string = "foo,0\nbar,1\nbaz,2\n"
output_string = CSV.generate(input_string.dup) do |csv|
csv << ['bat', 3]
csv << ['bam', 4]
end
output_string # => "foo,0\nbar,1\nbaz,2\nbat,3\nbam,4\n"
input_string # => "foo,0\nbar,1\nbaz,2\n"
output_string.equal?(input_string) # => false # Different strings
從無到有創建行:
output_string = CSV.generate do |csv|
csv << ['foo', 0]
csv << ['bar', 1]
csv << ['baz', 2]
end
output_string # => "foo,0\nbar,1\nbaz,2\n"
如果 csv_string
不是 String 對象,則引發異常:
# Raises TypeError (no implicit conversion of Integer into String)
CSV.generate(0)
相關用法
- Ruby CSV.generate_line用法及代碼示例
- Ruby CSV.header_convert用法及代碼示例
- Ruby CSV.skip_lines用法及代碼示例
- Ruby CSV.table用法及代碼示例
- Ruby CSV.force_quotes?用法及代碼示例
- Ruby CSV.unconverted_fields?用法及代碼示例
- Ruby CSV.col_sep用法及代碼示例
- Ruby CSV.shift用法及代碼示例
- Ruby CSV.skip_blanks?用法及代碼示例
- Ruby CSV.read用法及代碼示例
- Ruby CSV.row_sep用法及代碼示例
- Ruby CSV.header_row?用法及代碼示例
- Ruby CSV.headers用法及代碼示例
- Ruby CSV.csv << row用法及代碼示例
- Ruby CSV.encoding用法及代碼示例
- Ruby CSV.each用法及代碼示例
- Ruby CSV.return_headers?用法及代碼示例
- Ruby CSV.converters用法及代碼示例
- Ruby CSV.line用法及代碼示例
- Ruby CSV.parse_line用法及代碼示例
- Ruby CSV.convert用法及代碼示例
- Ruby CSV.parse用法及代碼示例
- Ruby CSV.line_no用法及代碼示例
- Ruby CSV.instance用法及代碼示例
- Ruby CSV.liberal_parsing?用法及代碼示例
注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 CSV.generate。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。