2012-05-22 65 views
10

我使用的紅寶石1.9.2,還可以使用它的CSV library.I想在CSV寫正確剛剛怎麼寫成CSV文件正確

這樣

name,country_code,destination,code 
Afghanistan,93,Bamain,51 
Afghanistan,93,Bamain,52 
Afghanistan,93,Bamain,53 
Afghanistan,93,Parwan,91 

我的代碼是這樣的

def export_data 
    @coun = Country.all(:limit => 10) 
    header = "name,country_code,destination,code" 
    file = "my_file.csv" 
    File.open(file, "w") do |csv| 
    csv << header 
    @coun.each do |c| 
     csv << [c.name, c.country_code, c.user_id, c.subscriber_id]  
     # How puts line break here 
    end 
    end 
    send_file(file) 
end 

我上面提到的如何使我行的CSV文件拆分那裏,也省略此感嘆這

蓋在CSV每一行「[]」

Like ["Finland",1,1,2334] 

在此先感謝..

回答

28
csv << "\n" 

#2需要回答30個字符,但我不知道該說些什麼。

+8

也許你可以解釋爲什麼這工作? – Tommyixi

58

我覺得一般的CSV作家將是配不上你:

require 'csv' 
... 
CSV.open(file, 'w') do |writer| 
    @coun.each do |c| 
    writer << [c.name, c.country_code, c.user_id, c.subscriber_id] 
    end 
end