2

我想通过 java mail 发送带有阿拉伯语内容的电子邮件,但邮件中的每个阿拉伯语单词都显示为 ????????????? ,我怎样才能使编码为 utf_8 以支持阿拉伯语???因为我使用那个代码

    Message message = new MimeMessage(session);
    message.setFrom(new InternetAddress(from));
    message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to, false));
    message.setSubject(subject_a);
    message.setText(messageDetails_a);
    Transport.send(message);
4

2 回答 2

4

您必须创建一个 MimeMessage(并将其保留为 MimeMessage)并使用setSubject(subject, "UTF-8");主题的方法。

setContent( messageContent, "text/html; charset=utf-8" );将处理内容中的 UTF-8。

纯文本:

setText(messageContent, "UTF-8");

资源 :

于 2010-09-17T17:07:34.120 回答
4

只需在方法中添加一些字符集信息。如果主题或消息正文包含非 US-ASCII 字符,则将使用默认字符集进行编码。将字符集显式设置为 UTF-8 始终是安全的:

String charset="UTF-8";
message.setSubject(subject_a,charset);
message.setText(messageDetails_a,charset);
于 2010-09-17T18:59:51.873 回答