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

तो यहाँ मेरी स्वरूपित सामग्री जब मैं डिबगरमाइमेमेस में न्यूलाइन कैरेक्टर का सही ढंग से व्याख्या नहीं किया गया है?

Dear Scott, 
Sending mail over internet 

में निरीक्षण लेकिन जब मैं थंडरबर्ड में मिल जाए, तो मैं एक रेखा से नीचे की तरह में पूरा संदेश प्राप्त है। किसी तरह न्यू लाइन चरित्र सही ढंग से व्याख्या नहीं की है, जब एचटीएमएल

Dear Scott,Sending mail over internet 
यहाँ

मैं कैसे एचटीएमएल

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

के रूप में संदेश भेज रहा हूँ तो मैं बस msg.setText के रूप में पाठ भेजने जाता है (शरीर के रूप में सामग्री भेजने , CHARSET_UTF_8) तो मुझे अगली पंक्ति में दिखाई देने वाले संदेश में सही प्रारूप में संदेश "इंटरनेट पर मेल भेजना" दिखाई देता है। मुझे नहीं मिल रहा है कि HTML के रूप में पाठ भेजते समय नया लाइन वर्ण सही तरीके से क्यों नहीं समझा जाता है?

उत्तर

11

क्योंकि आप एक HTML ईमेल भेज रहे हैं, तो आप के बजाय <br /> उपयोग करने के लिए \r\n, बस क्लासिक HTML दस्तावेज़ (जैसे .html फ़ाइल) की तरह। जब आप \r\n का उपयोग करते हैं, तो प्रस्तुत सामग्री एक नई पंक्ति मुद्रित नहीं करेगी, लेकिन मेल का स्रोत कोड (और इसके विपरीत) होगा।

9

एचटीएमएल न्यूलाइन अक्षरों की व्याख्या नहीं करता है। आप सामग्री प्रकार सेट करते हैं करने के लिए "html", "< br/>" के बदले "\ r \ n" का उपयोग करें:

StringBuffer emailMessage = new StringBuffer("Dear Scott"); 
emailMessage.append("<br/>"); 
emailMessage.append("Sending mail over internet"); 
संबंधित मुद्दे