有没有推荐的逃生方法?
和
在纯Java代码中输出HTML时是否包含字符?(除了手动执行以下操作外,即)。
String source = "The less than sign (<) and ampersand (&) must be escaped before using them in HTML";
String escaped = source.replace("<", "<").replace("&", "&"); // ...
发布于 2021-03-02 09:43:25
Java 8+解决方案:
public static String escapeHTML(String str) {
return str.chars().mapToObj(c -> c > 127 || "\"'<>&".indexOf(c) != -1 ?
"&#" + c + ";" : String.valueOf((char) c)).collect(Collectors.joining());
}
返回一个
字符串中的字符值。然后我们可以使用
要转义字符代码大于127的字符以及双引号(
),单引号(
),左尖括号(
)、右尖括号(
)和与号(
)。
将
让我们重归于好。
https://stackoverflow.com/questions/1265282
复制相似问题