Java 發送郵件 標題中文亂碼問題的解決

工做中偶遇,記錄下來編碼

經過mail.jar發送郵件,中文標題亂碼code

查了下資料,SMTP協議中標題只支持US-Ascii編碼。ci

msg.setSubject("中文")    標題無論什麼編碼的字符串(utf8,gbk,iso8859-1)都亂碼,由於ascii不識別字符串

解決方法:base64

msg.setSubject( "=?GB2312?B"+Base64.encode("中文")+"?=" )亂碼

解碼成base64,ascii識別無壓力後,再按2312顯示。方法

相關文章
相關標籤/搜索