Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从java mail发送支持Outlook的HTML邮件正文_Java_Html_Email - Fatal编程技术网

从java mail发送支持Outlook的HTML邮件正文

从java mail发送支持Outlook的HTML邮件正文,java,html,email,Java,Html,Email,我使用的代码在浏览器中运行良好,但在Outlook中显示格式不正确: MimeMultipart mimeMultipart = new MimeMultipart(); MimeBodyPart bodyPart = new MimeBodyPart(); bodyPart.setText("<html><body><font size='3px' face='Times New Roman'>" + removeMultipleSpaces(ms

我使用的代码在浏览器中运行良好,但在Outlook中显示格式不正确:

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" );
MimeMultipart MimeMultipart=新的MimeMultipart();
MimeBodyPart bodyPart=新的MimeBodyPart();
bodyPart.setText(“”)
+移除多个空间(msgbody)+“”;
mimeMultipart.addBodyPart(bodyPart);
bodyPart.setDescription(“文本”);
setHeader(“内容类型”,“文本/html;字符集=utf-8”);

正如您在评论中提到的,您希望添加一个图像。为映像创建MimeBodyPart,创建cid,并在映像的MimeBodyPart上执行setContentID:

import javax.mail.internet.*;

MimeMultipart content = new MimeMultipart("related");

MimeBodyPart mainPart = new MimeBodyPart();
mainPart.setText("<html><body><img src=\"cid:123456789@localhost\"></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("<123456789@localhost>");   // to embed
imagePart.setDisposition(MimeBodyPart.INLINE);  // to embed
content.addBodyPart(imagePart);
import javax.mail.internet.*;
MimeMultipart内容=新的MimeMultipart(“相关”);
MimeBodyPart mainPart=新的MimeBodyPart();
mainPart.setText(“,“UTF-8”,“html”);
内容。添加正文部分(主要部分);
MimeBodyPart imagePart=新的MimeBodyPart();
java.net.URL img1=Example.class.getClassLoader().getResource(“image.png”);
setDataHandler(新的DataHandler(img1));
//或:
//imagePart.attachFile(“resources/image.png”);
imagePart.setContentID(“”;//镶嵌
imagePart.setDisposition(MimeBodyPart.INLINE);//镶嵌
content.addBodyPart(imagePart);

您能再解释一下实际问题是什么吗?可能是因为Outlook支持,请尝试查看此处,看看是否支持所有内容;但问题是什么?什么显示不正确,它到底是如何不正确的?另外,您发布的内容看起来还不错,
msgBody
的内容会很有趣……我正在发送html标记中图像的字节码。但在outlook中无法显示图像。它在浏览器中运行良好。