"
标签内的文本-6ren"> "
标签内的文本-我有一个jsp,它是通过java方法init()初始化的. 初始化就像 void init() { .... out.print(""); out.print(someString); out.pri-6ren">
gpt4 book ai didi

java - "<\div>"
标签内的文本

转载 作者:行者123 更新时间:2023-11-30 03:08:11 25 4
gpt4 key购买 nike

我有一个jsp,它是通过java方法init()初始化的.

初始化就像

void init() {
....
out.print("<div>");
out.print(someString);
out.print("</div>");
....
}

何时 someString包含"string</div>"我只得到"string"我的 jsp 上有文本,但我想获取 "string</div>" 。我应该如何打印 "</div>"里面的文字<div> html 中的标签?

最佳答案

如果someString并不意味着被解释为 HTML,您不想将其字面输出为 HTML,您需要确保 <& (至少)被编码。

您可以通过执行一对 String#replace 来做到这一点:

out.print(someString.replace("&", "&amp;").replace("<", "&lt;"));

请注意,执行 & 很重要< 之前的替换替换(否则您最终将在 & 中编码 &lt; )。

如果您有机会在属性值中输出此内容(例如 <div data-stuff="output goes here"> ),您还需要对 " 进行编码:

out.print(
someString.replace("&", "&amp;")
.replace("<", "&lt;")
.replace("\"", "&quot;")
);

...除了 HTML 大小微不足道增加之外,始终编码 " 是无害的。 .

如果您在属性周围使用单引号 ( <div data-stuff='output goes here'> ),您还需要对 ' 进行编码。不知道浏览器对&apos;的支持有多好是这些天(它曾经是不稳定的),所以你可以使用 &#39; 。我的偏好只是确保我始终在属性值周围使用双引号,因此我不必担心撇号。

关于java - "<\div>"<div> 标签内的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34220498/

25 4 0