使用Ruby CSV生成的列中的CSV文件,带有运输返回的CSV文件,在Excel中返回方形字符



我有一个脚本,该脚本将CSV文件生成并通过Windows上的许多用户发电子邮件。其中一列在其中有线断裂,当我打开生成的文件时,我会在线路断裂之前得到方形框。这是我要做的代码中的一个示例:

CSV.open("/tmp/reports.csv", "w") do |csv|
  csv << ["Date", "Description", "Comments", "Status"]
  csv << ["Foo","Bar","Thisrn is rn where rn my rn linebreaks rn are,"Baz"]
end

我已经尝试了我能想到的任何数量的线路破坏和编码组合,但没有欢乐。我怀疑它与此问题有关,但是解决方案涉及在导入之后做某事,我宁愿不挑剔我的用户,尤其是因为我在这里没有与技术用户打交道。

有什么想法?

尝试gsubing r out:

csv << ["Foo","Bar","square rn here","Baz"].map{|col| col.gsub(/r/, '')}

最新更新