3
我要讓CSV ::作家產生一個帶引號的字符串內換行:包含換行符使用Ruby CSV生成領域::作家
A,B,"Line
Line",C
因此該行會在Excel中顯示爲:
A,B,Line,C
Line
是否有可能阻止CSV:Writer刪除換行符? 如果不是,將切換到FasterCSV解決這個問題?
我要讓CSV ::作家產生一個帶引號的字符串內換行:包含換行符使用Ruby CSV生成領域::作家
A,B,"Line
Line",C
因此該行會在Excel中顯示爲:
A,B,Line,C
Line
是否有可能阻止CSV:Writer刪除換行符? 如果不是,將切換到FasterCSV解決這個問題?
切換到FasterCSV將起作用。
由IRB會議:
require 'fastercsv'
FasterCSV.open("./testfile.csv", "w") do |csv|
csv << ["row", "of", "CSV\nCSV", "data"]
end
貌似可以,如果你的行分隔符設置爲默認值以外的東西(這是\ r \ n或\ n)的。下面是一個例子(看看在調用CSV.parse_row指定的最後一個參數):
require 'csv'
src = "a,test\ntest,b\ra,test\ntest,b,c"
idx = 0
begin
parsed = []
parsed_cells, idx = CSV.parse_row(src, idx, parsed, ',', ?\r)
puts "Parsed #{ parsed_cells } cells."
p parsed
end while parsed_cells > 0
這裏是輸出:
Parsed 3 cells.
["a", "test\ntest", "b"]
Parsed 4 cells.
["a", "test\ntest", "b", "c"]
希望這有助於。