2009-08-05 37 views
11

我正在编写一个Ruby脚本来生成一个CSV文件。 我的理解是,CSV文件中的每一行都是表格中的一行。Ruby输出到前一个输出的相同行

现在我的脚本生成的东西看起来像这样

Vancouver, Calgary, 
Routes1, 
Routes2, 
Routes3, 
Vancouver, Toronto 
etc, 
etc, 
etc 

,但我需要它,使它看起来像这样把它导入到DB

Vancouver, Calgary, Routes1, Routes2, Routes3 
Vancouver, Toronto, etc etc etc.. 

我的脚本通过查找温哥华工作和卡尔加里从包含不同文件中的路线位置的原始数据。然后脚本会转到这些文件以查找实际路线。每次找到路由(例如路由1)时,脚本都使用“puts”方法输出它。 问题是每个输出都在一个新的行上。

有没有办法在使用“puts”命令时抑制新的命令行?

+0

你看过使用http://fastercsv.rubyforge.org/?你可以建立一个数组并使用它to_csv – BaroqueBobcat 2009-08-05 23:42:15

回答

41

是的,请改用print var; puts自动追加新行,print没有。

+1

你是上帝!谢谢 – b1gtuna 2009-08-05 19:16:17

+0

对于新行使用打印“\ n” – 2018-02-19 10:36:07