java
  • html
  • email
  • 2013-03-11 120 views 0 likes 
    0

    我使用下面的代碼在瀏覽器中運行良好,但不顯示爲正確格式化在Outlook:發送HTML郵件正文支持從Outlook Java郵件

    MimeMultipart mimeMultipart = new MimeMultipart(); 
    MimeBodyPart bodyPart = new MimeBodyPart(); 
    
    bodyPart.setText("<html><body><font size='3px' face='Times New Roman'>" 
        + removeMultipleSpaces(msgbody) + "</font></body></html>"); 
    mimeMultipart.addBodyPart(bodyPart); 
    bodyPart.setDescription("Text"); 
    bodyPart.setHeader("Content-Type", "text/html; charset=utf-8"); 
    
    +0

    你能解釋一下多一點實際的問題是什麼? – 2013-03-11 11:22:33

    +1

    這可能是因爲支持Outlook,請嘗試在這裏查看是否支持所有內容; http://www.campaignmonitor.com/css/ – Andy 2013-03-11 11:23:47

    +0

    但問題是什麼? _What_顯示不正確,確切_how_不正確?另外,你發佈的內容似乎沒問題,'msgBody'的內容會很有趣... – ppeterka 2013-03-11 12:57:57

    回答

    0

    當您在評論提到,你想要添加圖片。爲圖像創建一個MimeBodyPart的,創建一個CID,並且做對圖像的MimeBodyPart的setContentID:

    import javax.mail.internet.*; 
    
    MimeMultipart content = new MimeMultipart("related"); 
    
    MimeBodyPart mainPart = new MimeBodyPart(); 
    mainPart.setText("<html><body><img src=\"cid:[email protected]\"></body></html>","UTF-8", "html"); 
    content.addBodyPart(mainPart); 
    
    MimeBodyPart imagePart = new MimeBodyPart(); 
    
    java.net.URL img1 = Example.class.getClassLoader().getResource("image.png"); 
    imagePart.setDataHandler(new DataHandler(img1)); 
    //or: 
    //imagePart.attachFile("resources/image.png"); 
    
    imagePart.setContentID("<[email protected]>"); // to embed 
    imagePart.setDisposition(MimeBodyPart.INLINE); // to embed 
    content.addBodyPart(imagePart); 
    
    相關問題