Email Subject 編碼
編解碼郵件主旨,檢查字元集與分段內容
主旨轉換
方向由你選,本工具不會依內容自己改成另一種操作
進階設定
純 ASCII 的主旨本來就不必編碼;這個開關是給相容性測試用的。
Q 編碼是 RFC 2047 主旨欄位專用的寫法,跟郵件內文的 Quoted-Printable 不是同一件事。
轉換結果
尚未轉換,按下「轉換主旨」開始
本工具不寄信,也不會把內容送出瀏覽器
分段解析
每一段的原文、宣告字元集、實際使用的解碼器與結果。一般使用者不必先看懂這一區才能操作。
| 段 | 型別 | 原文 | 宣告字元集 | 實際解碼器 | 結果 |
|---|
還沒有可以分析的分段
使用說明
四個最常被問到的問題,每一個都可以直接把例子載進上面的輸入框。
為什麼主旨會出現 =?UTF-8?B?…?
郵件標頭只能放 ASCII 字元。中文、日文、emoji 這些字必須先轉成位元組,再包成 RFC 2047 的 encoded-word 才送得出去,`=?字元集?編碼方式?內容?=` 就是那個包裝。
=?UTF-8?B?5oiR5piv5Lit5paH?=
我是中文
B 與 Q 要怎麼選?
整段幾乎都是中文時 Base64(B)比較短;大部分是英數、只夾幾個非 ASCII 字元時 Q 比較短。選「較短輸出」會兩種都算一次再挑短的,並告訴你選到哪一種。
Hello world_
=?UTF-8?Q?Hello_world=5F?=
Q 裡的底線代表空白,字面上的底線要寫成 =5F —— 這兩個很容易搞混。
為什麼解碼後還是亂碼?
字元集宣告只是寄件端的說法,不保證跟裡面的位元組一致。標籤寫 UTF-8、內容其實是 Big5,解出來就會是亂碼或直接失敗。本工具遇到解不開的位元組會停下來報錯,不會靜靜換成問號。
在下面的「分段解析」裡可以對那一段手動指定另一個字元集看看;套用之後會標示成手動覆寫,跟原始宣告分開顯示。
為什麼長主旨會分成多段?
RFC 2047 規定每一個 encoded-word 連包裝在內最多 75 個字元,而整行標頭最多 76 個字元。超過就得切成好幾段,段與段之間用摺行接起來;收件端會忽略相鄰兩段之間的空白,重新黏成完整主旨。
切段一定落在完整字元邊界上,所以每一段都能單獨解開,emoji 也不會被切成兩半。