2012-11-13 2 views
6
StringBuffer emailMessage = new StringBuffer("Dear Scott"); 
emailMessage.append("\r\n"); 
emailMessage.append("Sending mail over internet"); 

だからここに私のフォーマットされたコンテンツです。どういうわけか、改行文字 は、HTMLなどのコンテンツを送信するときに、ここで改行文字はMimeMessageで正しく解釈されませんか?私は、デバッガ</p> <pre><code>Dear Scott, Sending mail over internet </code></pre> <p>に検査が、私はThunderbirdの中でそれを受信したとき、私は以下のように1行に完了メッセージを受信したときに

Dear Scott,Sending mail over internet 

iは単にmsg.setText(本文としてテキストを送信する場合、私は、HTML

MimeMessage msg = null; 
msg = new MimeMessage(mailSession); 
msg.setText(body, CHARSET_UTF_8, "html"); 

としてメッセージを送信していますどのように正しく解釈されていません、CHARSET_UTF_8)その後、私は正しい形式のメッセージを表示します。つまり、次の行に表示されている にある「インターネットを介してメールを送信しています。 テキストをHTMLとして送信するときに改行文字が正しく解釈されないのはなぜですか?

答えて

11

\r\nクラシック HTMLドキュメント(例:.htmlファイル)のように。 \r\nを使用すると、レンダリングされたコンテンツは新しい行は印刷されませんが、メールのソースコードは印刷されます(逆も同様です)。

9

HTMLでは改行文字は解釈されません。あなたは、「HTML」にコンテンツタイプを設定した場合、代わりに「\ r \ n」がの「< BR/>」を使用:あなたはHTML形式の電子メールを送信しているので、あなたが<br />の代わりを使用する必要が

StringBuffer emailMessage = new StringBuffer("Dear Scott"); 
emailMessage.append("<br/>"); 
emailMessage.append("Sending mail over internet"); 
関連する問題

 関連する問題