工做中偶遇,記錄下來編碼
經過mail.jar發送郵件,中文標題亂碼code
查了下資料,SMTP協議中標題只支持US-Ascii編碼。ci
msg.setSubject("中文") 標題無論什麼編碼的字符串(utf8,gbk,iso8859-1)都亂碼,由於ascii不識別字符串
解決方法:base64
msg.setSubject( "=?GB2312?B"+Base64.encode("中文")+"?=" )亂碼
解碼成base64,ascii識別無壓力後,再按2312顯示。方法