2011-01-27 5 views

답변

4

CSV::Writer에는 생성자 메소드가 있는데, 이는 구분자 문자열을 인수로 허용합니다.

#!/usr/bin/env ruby 

# +++ ruby 1.8 version +++ 

require "csv" 

outfile = File.open('csvout', 'wb') 
    CSV::Writer.generate(outfile, '|') do |csv| 
    csv << ['c1', nil, '', '"', "\r\n", 'c2'] 
    end 
outfile.close 
+3

이것은 Ruby 1.8에서만 작동하며 1.9에서는 Writer 클래스를 제거합니다. –

6

이전 CSV 라이브러리 루비 1.9에 FasterCSV로 대체 :

csv_string = CSV.generate(:col_sep => "\t") do |csv| 
    csv << ["row", "of", "CSV", "data"] 
    csv << ["another", "row"] 
    # ... 
end 

여기에 CSV의 현재 문서입니다.

require "csv" 

output = CSV.read("test.csv").map do |row| 
    row.to_csv(:col_sep => "|") 
end 
puts output