使用JavaMail发送超文本格式的邮件正文时中文乱码?
代码如下
message.setSubject(subject);
MimeMultipart mp = new MimeMultipart();
mp.setSubType("related");
MimeBodyPart mbp1 = new MimeBodyPart();
mbp1.setHeader("Content-Type", "text/html; charset=GBK");
String html = "<html>"
+ "<head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=GBK\"><title>"
+ "标题"+ "</title></head>"
+ "<body>" + "正文" + "</body>"
+ "</html>";
mbp1.setContent(html, this.getMessageMimeType());
mp.addBodyPart(mbp1);
message.setContent(mp);
message.setSentDate(new Date());
Transport transport = session.getTransport("smtp");
//验证用户
transport.connect(this.getMailhost(), this.getUsername(), this
.getPassword());
//发送邮件
transport.sendMessage(message, message
.getRecipients(Message.RecipientType.TO));
transport.close();
发送邮件后用foxmail看邮件发现邮件中的中文都是文号!