2017-12-30 86 views
0

:メモ帳で作られた https://www.dropbox.com/s/4re7tpp4pj9psov/ice_screenshot_20171230-162304.png?dl=0 スクリーンショット++(すべて表示文字は)私が使用Ruby CSV gemがWindows(CR LF)End Of LinesでCSVを生成する方法はありますか?何らかの理由でCSV宝石はここに(スクリーンショットを参照)UNIXのEOLとCSVを生成しているために

コード:

require 'csv' 

all_the_things = [] 

all_the_things << ["item1.1","item1.2","item1.3"] 
all_the_things << ["item2.1","item2.1","item2.1"] 
all_the_things << ["item3.1","item3.1","item3.1"] 

CSV.open("test.csv", "wb") do |row| 
    row << ["Column1", "Column2", "Column3"] #just headers 
    all_the_things.each do |data| 
     row << data 
    end 
end 

は、方法はありますUNIX(LF)の代わりにWindows EOL(CR LF)を使用するようにするには?

私は、Windows 10を使用している、と私だけの出力いくつかの行がうまく働いプットのすべてを使用してファイルにあれば(CSV宝石せずに適切なデータ構造を管理albeightは悪夢):

.... 
    File.open("test.csv", "w") do |line| 
    myarray.each do |data| 
     line.puts data 
    end 
end 

は、事前にありがとうすべてのアイデアや新年あけましておめでとう!それが明確に in the documentationを述べているとおり

+0

「Ruby CSV gem」とは何ですか? – mudasobwa

答えて

1

、1行セパレータを指定するには、row_sepオプションを使用する場合があります:何もありません

また
require 'csv' 
#        ⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓⇓ here 
CSV.open("/tmp/file.csv", "wb", row_sep: "\r\n") do |csv| 
    csv << %w|1 2 3 4| 
    csv << %w|a b c d| 
end 

、「CSV宝石は、」それはルビー標準ライブラリです。

+0

ありがとうございます! – AKarpun

+1

'csv'は両方です。 [2.5以降、これはいわゆるデフォルトの宝石です。](https://github.com/ruby/ruby/blob/v2_5_0/NEWS#stdlib-compatibility-issues-excluding-feature-bug-fixes) – cremno

関連する問題