none
Outlook 2007 看郵件亂碼, 已選Unicode8 RRS feed

  • 問題

  •  

    有一個很奇怪的問題, 請教各位.

    因為收到簡體和繁體的郵件都有,所以在Outlook 2007中的國際選項中設定了Unicode8, 發送出去別人也能看見中文, 但發現有些人的回復會變成亂碼. 奇怪是的打開郵件后,發現Outlook自己選擇的編碼是Unicode8, 我以為是編碼選錯,但改了其他都不見效, 最后再改回Unicode8 居然就可以看到中文了. 在關閉郵件的時候問我要不要保存, 我選擇保存, 但是再次打開又會是亂碼, 要重復選擇其他編碼,然后再選擇Unicode8一遍才行. 真的是十分的討厭.

    請問有沒有解決方法呢?

    2008年2月13日 上午 12:52

解答

  • ...

     

    一般來說處理方式都是一樣的,我自己寫的郵件軟體也是這樣做。

     

    要搞懂的話,就去念 RFC1521 ,信件收到後信件解碼是依據信頭 (Mail Header) 紅色這兩個段落解碼:

    Content-Type: text/plain;
     charset="utf-8"
    Content-Transfer-Encoding: base64

    Base64 這行表示位元組的編碼方式,charset 這行表示字串碼,若是省略,則假設為 ANSI 相容編碼 (big5, GB2321 等) ,依照控制台地區選項的預設值去解碼。

     

    換句話說,charset 這邊也可以不設為 UTF8 ,設為 big5 也可以,但是在將 big5 轉換為 Unicode 顯示時,若是字碼屬於日韓簡罕的範圍,可能會掉字,但不會整篇亂碼,我通常都直接建議別人設 UTF8 ,相容各國語言,也不用解釋太多。

     

    所以這個問題跟軟體版本沒啥關係,而是看對方回信時的信頭內容。

     

    信頭檢視的方式:點選郵件,滑鼠右鍵,選郵件選項

    裡面網際網路標題的所有內容,就是信頭。

    2008年2月14日 上午 02:38
    版主

所有回覆

  • 重點是寄件者要設 UTF8... 所以請你的回信者都設定國際編碼即可。

     

    寄件者若沒有設定國際編碼,在信頭 (Mail Header) 中就會沒有標示,軟體收到沒有標示編碼的,就會預設採用地區語系編碼,地區語系編碼是在控制台設定的,繁中通常設為台灣 (big5) 。

    2008年2月13日 上午 02:02
    版主
  • 感謝您的回帖, 但是我之前用Outlook2003 就從來沒有發生過這種情形, 真是搞不懂...
    2008年2月13日 下午 10:40
  • ...

     

    一般來說處理方式都是一樣的,我自己寫的郵件軟體也是這樣做。

     

    要搞懂的話,就去念 RFC1521 ,信件收到後信件解碼是依據信頭 (Mail Header) 紅色這兩個段落解碼:

    Content-Type: text/plain;
     charset="utf-8"
    Content-Transfer-Encoding: base64

    Base64 這行表示位元組的編碼方式,charset 這行表示字串碼,若是省略,則假設為 ANSI 相容編碼 (big5, GB2321 等) ,依照控制台地區選項的預設值去解碼。

     

    換句話說,charset 這邊也可以不設為 UTF8 ,設為 big5 也可以,但是在將 big5 轉換為 Unicode 顯示時,若是字碼屬於日韓簡罕的範圍,可能會掉字,但不會整篇亂碼,我通常都直接建議別人設 UTF8 ,相容各國語言,也不用解釋太多。

     

    所以這個問題跟軟體版本沒啥關係,而是看對方回信時的信頭內容。

     

    信頭檢視的方式:點選郵件,滑鼠右鍵,選郵件選項

    裡面網際網路標題的所有內容,就是信頭。

    2008年2月14日 上午 02:38
    版主