两个java版本的XSS防范类(二)

2014-11-23 23:14:01 · 作者: · 浏览: 1
rIterator it = new StringCharacterIterator(strInput);
for (char ch = it.first(); ch != CharacterIterator.DONE; ch = it.next()) {
if ((((ch > `) && (ch < {)) || ((ch > @) && (ch < [)))
|| (((ch == ) || ((ch > /) && (ch < :))) || (((ch == .) || (ch == ,)) || ((ch == -) || (ch == _))))) {
if (!flag) {
builder.append("&"");
flag = true;
}
builder.append(ch);
} else {
if (flag) {
builder.append(""");
flag = false;
}
builder.append("&chrw(" + (long) ch + ")");
}
}
if ((builder.length() > 0) && (builder.charAt(0) == &)) {
builder.delete(0, 1);
}
if (builder.length() == 0) {
builder.insert(0, """");
}
if (flag) {
builder.append(""");
}
return builder.toStr