2013-01-22 22 views
2

我試圖從OutLook Express保存一個.eml文件,但保存的文件在行尾有一行中有「=」(等於)字符。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> 

在這種情況下,我找不到身體,因爲它是writed BO = DY。

我試過將它保存在各種編碼中,但結果相同。 爲什麼OutLook以這種方式保存它?

回答

3

Outlook正在使用=作爲轉義符號。如果XY是十六進制數字=XY必須用ASCII碼XY替換爲字符。如果=後跟一個換行符,則必須刪除該換行符並將行加入。

Outlook會這樣做,因爲只有有限範圍的字節值可以通過SMTP安全傳輸,並且必須引用此範圍之外的字節。此外,線路長度也有限制,因此默認情況下,Outlook會拆分長度超過75個字節的行。我相信這被稱爲Quotted-Printable編碼。

檢查.eml文件中的Content-Transfer-Encoding:標題,並在應用過濾器之前通過解碼器運行該文件。過濾後再次對其進行編碼。

相關問題