如何使java字符串加粗和着色

时间:2013-10-15 07:56:57

标签: java email html-email

我正在使用java开发电子邮件应用程序。我有一个字符串如下:

String msg= "College Email \nHello"+" "+name+"\n"+"You are selected As 'Admin'.\n Please use Given username and password for login\n \Username:"+" "+username+" "+"Password:"+" "+password+"";

我希望将此字符串作为电子邮件发送。我想“ BOLD 和颜色”用户名和密码(我希望在收件箱中显示此消息,即在浏览器上)。我如何嵌入HTML标签来做到这一点?或者有没有使用HTML标签的简单方法呢?

任何人都可以纠正上面的字符串(msg)或提供任何链接或代码来解决这个问题吗?

谢谢。

3 个答案:

答案 0 :(得分:3)

只需在String msg = "<strong>Hello World!</strong>消息中键入标记并将其作为HTML消息发送,您只需通过MimeMessage#setContent()方法设置内容类型,如

message.setContent(msg, "text/html; charset=utf-8");`

答案 1 :(得分:1)

如果你想用旧学校,香草java方式,你可以使用org.w3c.dom.Document API来完成工作。

它有许多有用的方法可用于创建和操作createElementcreateAttribute等元素,以达到您想要的效果。

http://docs.oracle.com/javase/1.5.0/docs/api/org/w3c/dom/Document.html

答案 2 :(得分:1)

根据 Javadoc MimeMessage#setText()设置默认的mime类型text/plain,而您需要text / html。而是使用MimeMessage#setContent()代替。

String someHtmlMessage = "Hello this is test message <b style='color:blue;'>bold color</b>";

message.setContent(someHtmlMessage, "text/html; charset=utf-8");

请注意,HTML不应包含<html>, <head> or <body>。 Gmail会忽略它。另请参阅邮件客户端中的CSS支持。