我收到了一个端点,它接收带有.xlsx
个文件作为附件的电子邮件。我想在我的应用程序中保存这些文件,以便以后可以访问数据。
收到邮件及其附件后 - 其mime_type为application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
- 我致电
path = "data/emails/#{attachment.filename}"
File.write(path, attachment.body.decoded)
但是我收到了这个错误:
编码:: UndefinedConversionError:“\ x85”从ASCII-8BIT到UTF-8
当我使用添加.force_encoding('utf-8')
到解码的主体时,它确实成功,但它写的文件变得无效。我无法正常打开它,也无法访问它的数据。
如何编写普通的Excel文件?
答案 0 :(得分:2)
这有用吗?
File.open( path, "w+b", 0644 ) { |f| f.write attachment.body.decoded }