用ajax传递中文的时候,出现&#这种的编码问题,网上查询到一方法如下:
[code]
public static String toOriginString(String str) {
/*
* 把一个包含实体转义的字符串从实体转义转回原来的格式
*/
StringBuffer buf = new StringBuffer();
Matcher m = Pattern.compile("&#\\d+;").matcher(str);
int start = 0;
String findstr = null;
while (m.find()) {
findstr = m.group();
buf.append(str.substring(start, m.start())+ (char) Integer.parseInt(findstr.substring(2, findstr.length() - 1)));
start = m.end();
}
buf.append(str.substring(start));
return buf.toString();
}
[/code]
[code]
public static String toOriginString(String str) {
/*
* 把一个包含实体转义的字符串从实体转义转回原来的格式
*/
StringBuffer buf = new StringBuffer();
Matcher m = Pattern.compile("&#\\d+;").matcher(str);
int start = 0;
String findstr = null;
while (m.find()) {
findstr = m.group();
buf.append(str.substring(start, m.start())+ (char) Integer.parseInt(findstr.substring(2, findstr.length() - 1)));
start = m.end();
}
buf.append(str.substring(start));
return buf.toString();
}
[/code]