我有一個從gmail讀取郵件的電子郵件偵聽程序。當我從包含中文字符的Outlook客戶端發送郵件時,編碼設置爲gb2312,這導致Java郵件API中part.getContent()的結果不正確。使用Java郵件API不能正確讀取中文工具
如果客戶端的編碼設置爲中文Big5程序正常工作,但我們無法更改Outlook Client中的編碼。有沒有辦法從Java Mail API讀取,但設置內容類型或任何其他方法來獲取正確的內容??????
我有一個從gmail讀取郵件的電子郵件偵聽程序。當我從包含中文字符的Outlook客戶端發送郵件時,編碼設置爲gb2312,這導致Java郵件API中part.getContent()的結果不正確。使用Java郵件API不能正確讀取中文工具
如果客戶端的編碼設置爲中文Big5程序正常工作,但我們無法更改Outlook Client中的編碼。有沒有辦法從Java Mail API讀取,但設置內容類型或任何其他方法來獲取正確的內容??????
https://community.oracle.com/message/5440489#5440489
二手GBK字符集來讀取所有GB2312文件中的文件,因爲GB2312是GBK的一個子集。
以下則應該以一點運氣的工作:
String content = mail. ...
// The bytes as sent, and then interpreted as gb2312:
byte[] bytes = content.getBytes("gb2312");
// Now correctly interprete the bytes as Big5:
content = new String(bytes, "Big5");
這是行不通的...我的實際輸入:地址及電話均正確。,在做新的String後輸入(字節,「Big5」) - 華硊摯??歙? – user2652204
對不起,在你身邊付出了努力。我希望你能跟隨我的想法。 –
是的,我試過...從part.getContent()我寫了你已經指定的相同的代碼。但仍然顯示垃圾字符 – user2652204