我的python脚本(如下所示)可以发送一个“.txt”附件,但不幸的是收到的附件丢失了“\ n”,所以所有行都在一起这破坏了我的列格式。任何人都可以请给我一个帮助吗?非常感谢!Python电子邮件附件丢失换行符“ n”
msg['From'] = send_from
msg['To'] = COMMASPACE.join(send_to)
msg['Date'] = formatdate(localtime=True)
msg['Subject'] = 'Subject of Email4'
mailbody = "This is the content of Email4"
msg.attach(MIMEText(mailbody))
with open("regresult.txt", "r") as fil:
part = MIMEApplication(
fil.read(),
Name=basename("regresult.txt")
)
part['Content-Disposition'] = 'attachment; filename="%s"' % basename('regresult.txt')
msg.attach(part)
更新:原始文件(与VIM远程Unix服务器开启)是这样的:original file format
接收的文件格式是这样的:received
你能显示生成的附件文本吗?和原文? –
我认为问题出在文本文件本身。上面的代码非常简单。 'MIMEApplication'简单地使用base64对文本文件进行编码,并且查看电子邮件的电子邮件客户端对其进行解码,而没有任何复杂性。我在Windows中打开文本文件时遇到了一些问题,并且我缺少新的换行符。在附加.txt文件 – gixxer
@joelgoldstick之前尝试使用'unix2dos'或'dos2unix',我只能上传两种格式的图像。无法找到上传.txt附件的地方。 – leoking87