日期:2014-05-20  浏览次数:20429 次

过滤危险字符函数
下面这段代码是在网上找到的,功能是实现危险字符的过滤,但是在使用的时候后面那个参数iMaxLength设置为多少都会有问题,请教一下改怎么来设置呢?

        public   static   string   ClearStringInput(string   sInputString,   int   iMaxLength)
        {
                //构造临时字符串数组
                StringBuilder   retVal   =   new   StringBuilder();
                if   ((sInputString   !=   null)   &&   sInputString   !=   String.Empty)
                {
                        //清空字符串两端的空白符号
                        sInputString   =   sInputString.Trim();
                        //设置字符串的长度
                        if   (sInputString.Length   >   iMaxLength)
                        {
                                sInputString   =   sInputString.Substring(0,   iMaxLength);
                        }
                        for   (int   i   =   0;   i   <   iMaxLength;   i++)
                        {
                                switch   (sInputString[i])
                                {
                                        //替换危险字符
                                        case   ' " ':   retVal.Append( "&quot; ");   break;
                                        case   ' < ':   retVal.Append( "&lt; ");   break;
                                        case   '> ':   retVal.Append( "&gt ");   break;
                                        default:   retVal.Append(sInputString[i]);   break;
                                }
                        }

                        //替换字符“’”
                        retVal.Replace( " ' ",   "   ");
                }