工做中偶遇,记录下来编码
经过mail.jar发送邮件,中文标题乱码code
查了下资料,SMTP协议中标题只支持US-Ascii编码。ci
msg.setSubject("中文") 标题无论什么编码的字符串(utf8,gbk,iso8859-1)都乱码,由于ascii不识别字符串
解决方法:base64
msg.setSubject( "=?GB2312?B"+Base64.encode("中文")+"?=" )乱码
解码成base64,ascii识别无压力后,再按2312显示。方法