通过此代码。
require 'csv'
CSV.generate('', quote_char: '"') { |csv| csv << ['A','B','C'] }
它返回此。
A,B,C
,但我希望这个结果。
"A","B","C"
enviroment
- Ruby 2.3.1
使用force_quotes
选项:
puts CSV.generate(quote_char: '"', force_quotes: true) { |csv| csv << ['A','B','C'] }
"A","B","C"
来源:https://stackoverflow.com/a/5832131
首先,您对quote_char
的规范是多余的,因为这是默认的。
quote_char
dis 不说必须使用引号,但指示如果需要引用某些内容,可以使用哪些引号。在您的示例中,不需要引号,因此您看不到报价字符的任何影响。
如果您想始终有报价,则应设置force_quotes: true
。
例如,请参见此处。