3

我是java编码的新手。我有一个可以发送邮件的应用程序,用 Java 实现。我想在邮件中放置一个 HTML 链接,但是当我放置一个 html 链接时,它会显示错误消息;即使一切正确,也丢失了。

String msgbody = "This is a reminder mail"; 
String link = "<a href="http://abcd.efg.com" target="_blank">http://abcd.efg.com</a>"; 
msgbody = msgbody + link;

如果我使用这样的字符串有什么问题吗?

4

3 回答 3

5

您需要在字符串文字中转义引号。

代替

String link = "<a href="http://abcd.efg.com" target="_blank">http://abcd.efg.com</a>";

尝试

String link = "<a href=\"http://abcd.efg.com\" target=\"_blank\">http://abcd.efg.com</a>";

有关详细信息,请参阅“字符”

转义序列

以反斜杠 ( \) 开头的字符是转义序列,对编译器具有特殊含义。下表显示了 Java 转义序列:

...

当在 print 语句中遇到转义序列时,编译器会相应地解释它。例如,如果要将引号放在引号内,则必须在内部引号上使用转义序列 , \"。打印句子

She said "Hello!" to me.

你会写

System.out.println("She said \"Hello!\" to me.");
于 2012-05-13T04:57:40.833 回答
3

您可以使用上面回答的转义方法,也可以使用单引号。如下:

String link = "<a href='http://abcd.efg.com' target='_blank'>http://abcd.efg.com</a>"; 

单引号适用于 HTML。

于 2012-05-13T05:03:38.787 回答
1

使用multiLine Strings包含在 JDK 15 中:

String msgbody = "This is a reminder mail";
String link = """
<a href="http://abcd.efg.com" target="_blank">http://abcd.efg.com</a>""";
msgbody = msgbody + link;
于 2021-03-08T09:06:25.560 回答