2016-01-30 25 views
-1

當我使用java mail api發送郵件時,我必須設置幾行作爲標題和頁腳自動打印。 1.很好的幫助打印出來,而不需要修改我的對齊方式。 2.如何爲我的電子郵件設置背景顏色以及如何設置我的電子郵件的字體顏色。 我已附加了我的Java代碼和屏幕截圖的郵件。 任何人都可以幫助我實現這個目標嗎? 在此先感謝。郵件的如何使用java郵件api打印郵件標題和頁腳?

我的Java代碼:

package comparexmlf1; 
import comparexmlf1.validatexml; 
import comparexmlf1.CarParser1; 
import comparexmlf1.OrderParser2; 
import java.io.BufferedReader; 
import java.io.FileInputStream; 
import java.io.IOException; 
import java.io.InputStreamReader; 
import java.io.ObjectInputStream.GetField; 
import java.text.DateFormat; 
import java.text.SimpleDateFormat; 
import java.util.Calendar; 
import java.util.Enumeration; 
import java.util.Properties; 
import java.util.logging.Logger; 
import javax.lang.model.element.Element; 
import javax.mail.Message; 
import javax.mail.MessagingException; 
import javax.mail.Multipart; 
import javax.mail.Session; 
import javax.mail.Transport; 
import javax.mail.internet.AddressException; 
import javax.mail.internet.InternetAddress; 
import javax.mail.internet.MimeBodyPart; 
import javax.mail.internet.MimeMessage; 
import javax.mail.internet.MimeMultipart; 
import javax.swing.text.html.MinimalHTMLWriter; 
import javax.xml.soap.MimeHeader; 
import org.apache.log4j.Appender; 
import org.apache.log4j.FileAppender; 
public class mailer { 
static void sendmail() throws IOException,  
MessagingException,AddressException 
    { 
      String to1=CarParser1.to1; 
      DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy 
HH:mm:ss"); 
      Calendar cal = Calendar.getInstance(); 
      String to2 = CarParser1.to2; 
      String to3= CarParser1.to3; 
      String to4=CarParser1.to4; 
      String from = CarParser1.from; 
      String host = CarParser1.host; 
      Properties properties = System.getProperties(); 
      properties.setProperty("mail.smtp.host", host); 
      Session session = Session.getDefaultInstance(properties); 
      MimeMessage message = new MimeMessage(session); 
      int m_toterr,m_totwarn; 
      String getfilepath=""; 
      String filenamechange="D:/newlog 
/"+CarParser1.si_orderid+"_log.txt"; 
      System.out.println("New File Path for mail:"+filenamechange); 
      String pathLogFile = filenamechange; 
      Enumeration enumeration = 
CarParser1.logger.getRootLogger().getAllAppenders(); 
      try { 
       m_toterr=validatexml.Total_err; 
       message.setFrom(new InternetAddress(from)); 
       message.addRecipient(Message.RecipientType.TO, new 
InternetAddress(to1)); 

       message.setSubject(" CAR Validation Report at : 
"+dateFormat.format(cal.getTime())); 


        StringBuffer sb = new StringBuffer(); 
        FileInputStream fstream = new 
FileInputStream(pathLogFile); 
        BufferedReader br = new BufferedReader(new 
InputStreamReader(fstream)); 

        String singleLine; 
        while ((singleLine = br.readLine()) != null) 
        { 
         sb.append(singleLine + "<br><br>"); 

        } 
        br.close(); 
        String allLines = sb.toString(); 

        message.setContent(allLines, "text/html; charset=ISO- 
8859-1"); 
       Transport.send(message); 



       System.out.println("Email Sent successfully...."); 
       CarParser1.logger.info("Email Sent Successfully..."); 
       System.out.println(); 

      } 
      catch (MessagingException mex) 
      { 
       System.out.println("Invalid Email Address.please provide 
a valid email id to send with"); 
       mex.printStackTrace(); 
    } 
} 
} 

Email Now Getting

Email Needed

任何一個可以幫助我實現這一目標? 在此先感謝。

回答

0

您發送的郵件由收件人的郵件閱讀器軟件呈現。如果收件人的郵件閱讀器支持HTML,那麼您可以在生成HTML時發送HTML電子郵件並控制內容,包括在郵件的開始和結束時發送特定的文本/標記,以及設置背景顏色等屬性。

是否所有這些都會影響完全取決於收件人的郵件閱讀器軟件是否支持HTML。通常建議爲非HTML閱讀器提供純文本版本。

關於格式化,頁眉,頁腳或背景顏色,Java電子郵件沒有任何特定的內容。這與HTML有關。

+0

謝謝先生,是的它支持HTML.Kindly幫助我與示例代碼打印相同? –

+0

請以示例代碼指導我,因爲我是新手。 –

相關問題