在用 ActionMailer 发邮件的时候,添加了带有中文名的附件,结果接收时显示的附件名是“ATTxxxxx”,有没有什么办法可以发中文名的附件呢?
不要沉了啊
'oo'
#2 楼 @qjlwuxi 解决了,当时自己太懒了,没翻书
不分享一下方案?
分享一下啊,亲
#4 楼 @Rei #5 楼 @cgyy 没什么值得分享的啊,判断附件名称是否包含中文,是的话转码成 gbk,不是的话就不转码。另外,我这是 windows 环境,用 win32ole 调 outlook 发送带附件的邮件。说出来我都觉得自己低级
#6 楼 @lionzixuanyuan 这些知识我就不知道啊。留下分享以后有需要的人就可以搜到了。
#7 楼 @Rei 哥,你让我惶恐了
@lionzixuanyuan 更好的解决方法是 在 require win32ole 后加上 WIN32OLE.codepage = WIN32OLE::CP_UTF8 然后就可以直接使用 utf8 了。
require win32ole
WIN32OLE.codepage = WIN32OLE::CP_UTF8
恩,感觉还是采用 utf8 更好点
#9 楼 @lyfi2003 感觉好高级阿,我明天上班去试试