Outlook Express在行尾添加“=”保存eml文件

时间:2013-01-22 18:49:12

标签: email outlook eml

我正在尝试从OutLook Express保存.eml文件,但保存的文件在某些​​行中在行尾有“=”(相等)字符。

在源模式下编辑邮件时,html似乎正常,只需保存即可显示“=”。

这对我不好,因为我会在发送之前编辑我的应用程序中的.eml。我必须找到/ BODY标签并插入文本。一个例子:

</DIV></DIV></DIV></DIV></DIV><FONT=20
style=3D"FONT-STYLE: normal; FONT-FAMILY: calibri; COLOR: rgb(0,0,0); =
FONT-SIZE: small; FONT-WEIGHT: normal"=20
face=3DCalibri><A=20
target=3D_blank></A></FONT></DIV></DIV></DIV></DIV></DIV></DIV></DIV></BO=
DY></HTML>

在这种情况下,我找不到身体,因为它是写的BO = DY。

我已尝试将其保存在各种编码中,但结果相同。 为什么OutLook会以这种方式保存它?

1 个答案:

答案 0 :(得分:4)

Outlook正在使用=作为转义符号。如果XY为十六进制数字=XY,则必须使用ASCII代码XY替换该字符。如果=后跟换行符,则必须删除此换行符并加入行。

Outlook执行此操作是因为只能通过SMTP安全传输有限范围的字节值,并且必须引用此范围之外的字节。行长度也有限制,因此默认情况下,Outlook会拆分长度超过75个字节的行。我相信这称为Quotted-Printable编码。

检查.eml文件中的Content-Transfer-Encoding:标头,然后在应用过滤器之前通过解码器运行该文件。并在过滤后再次编码。