Ruby CSV << 不能正确换行

我在这里有一个有线问题,

我在我的代码中使用标准的CSV << [“a”,“b”],输出文件在Excel和Sublime Text 2中performance得很好(优雅地换行符)

不过,我用Windows记事本打开文件,结果是一行。

而我尝试用VBA逐行读取这个文件,只得到一行。

这是我的代码,

require "csv" CSV::open("some_file.csv", "w") do |csv| csv << ["a", "b"] csv << ["a1", "b1"] end 

在崇高的文字2我得到

 a,b a1,b1 

但是在Windows记事本中,我只能得到

 a,ba1, b1 

任何想法为什么?

[更新]这是Windows记事本,而不是Windows文本编辑器,抱歉的错误。

原因是unix和windows系统不能以同样的方式处理换行符。 看到这个维基百科的文章 。 为了简化,unix使用LF ,写成\n而窗口期望CR+LF\r\n 。 这就是为什么它在Windows中打开时似乎是在同一行。 你可以使用@ arup-rakshit解决scheme,额外的\r不应该伤害,但你可能需要再次阅读时指定它。 否则,有一些工具可以将unix文件转换为windows文件,反之亦然。