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文件,反之亦然。