2016-03-15 70 views
-1

如何在Ruby中將空格分隔的字符串轉換爲CSV字符串?是否有可用於實現此目的的內置方法?如何在Ruby中將空白字符串轉換爲CSV字符串?

代碼:

@stores = current_user.channels 
puts @stores  

電流輸出:

TMSUS TMSCA 

預期輸出:

TMSUS,TMSCA 
+1

你的代碼部分是什麼?這與問題有關? – sawa

+1

歡迎來到SO。請閱讀「[問]」,包括底部的鏈接和「[mcve]」。你需要向我們展示你的努力:你在哪裏搜索,爲什麼沒有幫助?或者,你寫了什麼來解決這個問題?因爲它看起來像你要求我們爲你寫一個脫離主題的解決方案。向我們展示你的(失敗的)代碼和我們幫助解決它,比給我們寫一些與你的代碼完全無關的東西更好,並且你試圖合併它。 –

+1

另外,您向我們展示的小代碼與您的問題沒有任何關係。 「[mcve]」 –

回答

5

有Ruby的Here

require 'csv' 
stores = 'TMSUS THSCA' 
stores.split(' ').to_csv 
一個CSV庫

請勿使用gsub來做到這一點。如果您的字符串中包含逗號,則會破壞您的CSV。 CSV庫確實爲您逃脫。

+0

感謝Michael也描述了這一點。 – user2325154

+0

我打算將上述解決方案放在Rails控制器之一中。我是否需要在控制器中指定'require'csv''字符串? – user2325154

+0

你應該把它放在你使用代碼的地方。瞭解Rails如何加載所有內容,這可能已經是必需的了,但在使用它的代碼頂部顯示這些類型的需求總是很好的。 –

2

您可以使用CSV library

require 'csv' 

string = 'TMSUS THSCA' 

CSV.generate do |csv| 
    csv << string.split 
end 

# => "TMSUS,THSCA\n" 

的優勢,使用的CSV庫是正確的逃逸並引用其可能需要的值。