14
A
回答
36
StringEscapeUtils
正好有專爲這個功能:
3
這就是通常所說的 「HTML轉義」。我沒有意識到標準庫中的任何內容(儘管您可以通過使用XML轉義來近似它)。但是,有很多第三方庫可以做到這一點。來自org.apache.commons.lang的StringEscapeUtils有一個可以做到這一點的escapeHtml
方法。
2
public static String stringToHTMLString(String string) {
StringBuffer sb = new StringBuffer(string.length());
// true if last char was blank
boolean lastWasBlankChar = false;
int len = string.length();
char c;
for (int i = 0; i < len; i++)
{
c = string.charAt(i);
if (c == ' ') {
// blank gets extra work,
// this solves the problem you get if you replace all
// blanks with , if you do that you loss
// word breaking
if (lastWasBlankChar) {
lastWasBlankChar = false;
sb.append(" ");
}
else {
lastWasBlankChar = true;
sb.append(' ');
}
}
else {
lastWasBlankChar = false;
//
// HTML Special Chars
if (c == '"')
sb.append(""");
else if (c == '&')
sb.append("&");
else if (c == '<')
sb.append("<");
else if (c == '>')
sb.append(">");
else if (c == '\n')
// Handle Newline
sb.append("<br/>");
else {
int ci = 0xffff & c;
if (ci < 160)
// nothing special only 7 Bit
sb.append(c);
else {
// Not 7 Bit use the unicode system
sb.append("&#");
sb.append(new Integer(ci).toString());
sb.append(';');
}
}
}
}
return sb.toString();
}
1
ヶ輛是一個包含靜態方法的集合一個開源的Java類(ヶ輛,unhtmlentities,...),特殊字符和擴展字符轉換成HTML entitities,反之亦然。
http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=htmlentities
相關問題
- 1. 如何在java中爲所有特殊字符(',%,\,:,{,})轉義所有特殊字符
- 2. 如何在JSP中轉義特殊的HTML字符?
- 3. xml和html轉義特殊字符
- 4. 如何轉義特殊字符'\'?
- 5. Angularjs如何轉義特殊字符
- 6. 如何轉義特殊字符
- 7. python轉義特殊字符
- 8. C++ - 轉義特殊字符
- 9. JSTL轉義特殊字符
- 10. elasticseach特殊字符轉義
- 11. 轉義特殊字符
- 12. 轉義特殊字符
- 13. 轉義特殊字符
- 14. 解析特殊字符並轉換爲HTML(轉義字符串)
- 15. 在sqlite中轉義特殊字符
- 16. 在AJAX中轉義XML特殊字符
- 17. 在Ruby中轉義特殊字符
- 18. 如何轉義PDO連接字符串中的特殊字符?
- 19. 如何從標記字符串中轉義特殊字符?
- 20. 在datagrid列中轉義html特殊字符
- 21. 在XML屬性中轉義特殊(HTML標記)字符?
- 22. 如何將字符串轉換爲字典在python中轉義特殊字符
- 23. 如何從HTML中的XML文檔轉換html特殊字符
- 24. 在Unix外殼轉義特殊字符
- 25. 轉義cmd中的特殊字符
- 26. Python中的特殊字符轉義argv
- 27. 轉義SQL中的特殊字符
- 28. c中的特殊轉義字符#
- 29. 如何在使用xsl將html轉換爲文本時轉義特殊字符?
- 30. Html特殊字符
此鏈接不再工作。這個類可以在這裏找到http://commons.apache.org/proper/commons-lang/javadocs/api-3.1/org/apache/commons/lang3/StringEscapeUtils.html和包含它的項目在這裏http:// commons.apache.org/proper/commons-lang/ – Jakub 2013-06-07 12:58:55
@Jakub謝謝。用較新的URL更新了帖子。 – Amber 2013-06-08 05:09:28