2012-12-02 78 views
2

我正在使用在stackoverflow上找到的代碼將數據寫入文件。以CSV格式寫入文件

begin 
    file = File.open("/tmp/some_file", "w") 
    file.write("your text") 
rescue IOError => e 
    #some error occur, dir not writable etc. 
ensure 
    file.close unless file == nil 
end 

,它說如果我把我的變量名,將在用作變量的正確串補之一,但最好是我想要的是有一個以上的變量在CSV輸出理想的文本。喜歡的東西:

file.write(var1^var2^var3) 

在哪裏我的每一個變量都通過一根胡蘿蔔符號分隔。我怎樣才能做到這一點?

回答

1

實際上雖然在標準的ruby庫中有一個CSV庫,但它有一個CSV的gem。

看看例子,你會發現在ruby中編寫CSV文件比你想象的要容易得多。

http://fastercsv.rubyforge.org/classes/FasterCSV.html

http://fastercsv.rubyforge.org/

紅寶石STDLIB:http://ruby-doc.org/stdlib-1.9.3/libdoc/csv/rdoc/CSV.html#method-c-generate

+3

沒有必要用Ruby 1.9+使用FasterCSV,作爲Ruby的STDLIB CSV *爲* FasterCSV。如果您使用的是Ruby 1.8,則只能使用FasterCSV。 –

+1

不知道CSV中的C代表胡蘿蔔。 – steenslag

+0

看起來我正在運行:ruby 1.8.7(2010-01-10 patchlevel 249)[universal-darwin10.0]我如何在OSX上更新它? – Tony