我的java文件上的第16行(以'"<!DOCTYPE
...'开头)出现错误。
out.println (
"<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"
\"http://www.w3.org/TR/html4/loose.dtd\">\n" +
"<html> \n" +
"<head> \n" +
"<meta http-equiv=\"Content-Type\" content=\"text/html;
charset=ISO-8859-1\"> \n" +
"<title> My first jsp </title> \n" +
"</head> \n" +
"<body> \n" +
"<font size=\"12px\" color=\"" + color + "\">" +
"Hello World" +
"</font> \n" +
"</body> \n" +
"</html>"
);
错误消息:
String literal is not properly closed by a doubl-Quote
不知道怎么了。请帮我。
最佳答案
在Java中,字符串文字不能跨越多行。
在这里,您尝试创建一个跨越多个行的字符串文字:
"<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"
\"http://www.w3.org/TR/html4/loose.dtd\">\n"
而是将其分成多个串联字符串,如下所示:
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"" +
"\"http://www.w3.org/TR/html4/loose.dtd\">\n"
或者将整个字符串放在一行上,如下所示:
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\n"
<meta>
标记处再次发生相同的问题。
关于java - 字符串文字没有被双引号正确关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35668136/