ruby写入文件附件的内容为我提供了额外的新行字符

时间:2015-05-22 13:20:38

标签: ruby io

我正在尝试将附件从gmail保存到本地磁盘。我正在使用gmail gem并按照说明操作:

gmail.mailbox("Faxes").emails.each do |email|
  email.message.attachments.each do |f|
    File.write(File.join(folder, f.filename), f.body.decoded)
  end
end

问题是当我在记事本++中打开文件时,我看到每行添加新行字符后。如果我尝试添加

puts f.body.decoded

在保存文件之前,输出看起来没问题(没有其他新行字符)。

我尝试过不同的方法如何将内容保存到文件但总是有相同的结果。 我安装了Win7上的ruby 1.9.3。 不确定这是否与ruby,gmail gem或Win7区域设置有关。请帮助。

1 个答案:

答案 0 :(得分:0)

Ruby'puts'添加换行符。如果您可以使用'print'而不是新行。有关详细信息,请参阅puts vs print