我是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;
如果我使用这样的字符串有什么问题吗?
答案 0 :(得分: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>";
有关详细信息,请参阅"Characters"
转义序列
以反斜杠(
\
)开头的字符是转义序列,对编译器具有特殊含义。下表显示了Java转义序列:...
当在print语句中遇到转义序列时,编译器会相应地解释它。例如,如果要在引号中加引号,则必须在内部引号上使用转义序列
\"
。打印句子你会写
She said "Hello!" to me.
System.out.println("She said \"Hello!\" to me.");
答案 1 :(得分:2)
你可以使用上面回答的转义方法,或者你可以使用下面的单引号:
String link = "<a href='http://abcd.efg.com' target='_blank'>http://abcd.efg.com</a>";
单引号适用于HTML。
答案 2 :(得分:0)
使用 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;