我正在尝试从OutLook Express保存一个.eml文件,但保存的文件在某些行中行尾有字符"="(等于)。
在 souce 模式下编辑消息时,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 以这种方式保存它?
使用 =
作为转义符号。如果X
和Y
是十六进制数字=XY
则必须用带有 ASCII 代码的字符替换 XY
。如果=
后跟换行符,则必须删除此换行符并连接这些行。
Outlook 之所以这样做,是因为只能通过 SMTP 安全地传输有限范围的字节值,并且必须引用超出此范围的字节。行长也有限制,因此默认情况下,Outlook 会拆分长度超过 75 字节的行。我相信这被称为Quoted-Printable
编码。
在应用筛选器之前,请检查 .eml 文件中的Content-Transfer-Encoding:
标头并通过解码器运行该文件。并在过滤后再次编码。