servlet:escapexml
07. XMLのエスケープ
xml でそのままでは表示できない文字があって、変な表示になった。
文字列を xml で正しく表示できるように変換(エスケープ)するメソッドを作成。
public class Utils { static String escapeXml(String src) { if (src == null) { return null; } StringBuffer result = new StringBuffer(); for (char c : src.toCharArray()) { if (c == '&') { result.append("&"); } else if (c == '>') { result.append(">"); } else if (c == '<') { result.append("<"); } else if (c == '"') { result.append("""); } else { result.append(c); } } return new String(result); } }
使う方
String dst = Utils.escapeXml(src);
参考:XML ファイルを出力するときの ContentType は以下で指定。
res.setContentType("text/xml");
servlet/escapexml.txt · 最終更新: 2022/10/15 06:55 by hohog