1
zj
2025-06-23 dc9bd22833255bc602dd42c7f603ecb50842ab35
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package web.filter;
 
/**
 * 过滤特殊字符
 * 
 * @author lqiang
 * 
 */
public class Validator {
    public static String filter(String value) {
        if (value == null) {
            return null;
        }
        StringBuffer result = new StringBuffer(value.length());
        for (int i = 0; i < value.length(); ++i) {
            switch (value.charAt(i)) {
            case '<':
                result.append("&lt;");
                break;
            case '>':
                result.append("&gt;");
                break;
//            case '"':
//                result.append("&quot;");
//                break;
//            case '\'':
//                result.append("&#39;");
//                break;
            case '%':
                result.append("&#37;");
                break;
//            case ';':
//                result.append("&#59;");
//                break;
//            case '(':
//                result.append("&#40;");
//                break;
//            case ')':
//                result.append("&#41;");
//                break;
            case '&':
                result.append("&amp;");
                break;
            case '+':
                result.append("&#43;");
                break;
            default:
                result.append(value.charAt(i));
                break;
            }
        }
        return result.toString();
    }
}