1
私は、ユーザーからの入力を受け付ける件名、内容フィールドを持つjspフォームを持っています。プログラムはメールを送ります。ここでは、両方のフィールドがStringオブジェクトとして設定されています。日本語や中国語のメールキャラクターを送った後は、迷惑メールとして来る。 "英語"のように件名がうまくいけば件名を日本語文字でエンコードできませんでした
これは私が件名フィールドに漢字 test message
などの対象と与えられたメールを送信していた私のコード
// create a message
MimeMessage msg = new MimeMessage(session);
if(subject != null)
msg.setSubject(subject, "UTF-8");
//msg.setSubject(subject);//commented to take care of email
// create the Multipart and add its parts to it
//MimeMultipart mp = new MimeMultipart();
MimeMultipart mp = new MimeMultipart("alternative");
if(body != null)
{
// create and fill the first message part
MimeBodyPart mbp1 = new MimeBodyPart();
mbp1.setText(body);
mbp1.setHeader("Content-Type","text/html;charset=utf-8");
mbp1.setHeader("Content-Transfer-Encoding", "quoted-printable");
//mbp1.setContent(body, "text/html");
mp.addBodyPart(mbp1);
}
です。私は日本語文字のために迷惑文字を取得しています。だから私はメッセージの件名を取得しています?? test message
しかし、私はメールを受け取ってもまだ件名にいくつかの迷惑な文字を取得します。
jspページのヘッダーにあるページエンコーディングとは何ですか?ブラウザはどのようなエンコーディングを使用していますか? – bmargulies