java發送郵件亂碼解決方法:
//設置郵件主題 message.setSubject(MimeUtility.encodeText(mail_subject,MimeUtility.mimeCharset("gb2312"), null)); message.setContent(sendmessage, "text/html;charset=gbk"); // 設置郵件格式 message.setSentDate(new Date()); // 設置郵件發送日期 //設置郵件發件人名稱 Address address = new InternetAddress(usernames, MimeUtility.encodeText(personalName,MimeUtility.mimeCharset("gb2312"), null));
當一段 Text 或者 HTML 通過電子郵件傳送時,發送的內容首先通過一種指定的字符編碼轉化成“字節串”,然后再把“字節串”通過一種指定的傳輸編碼(Content-Transfer-Encoding)進行轉化得到另一串“字節串”。
郵件的標題,用了一種更簡短的格式來標注“字符編碼”和“傳輸編碼”。