• Asp.net 字符串操作基类(安全,替换,分解等)


    /############################################
    版权声明:
    文章内容为本站编辑,创作.你可以任意转载、发布、使用但请务必明文标注文章原始出处及本声明
    http://www.opent.cn  作者:浪淘沙
    ############################################/

    /**********************************************************************************
     *
     * 功能说明:常用函数基类
     * 作者: 刘功勋;
     * 版本:V0.1(C#2.0);时间:2006-8-13
     *
     * *******************************************************************************/

    /***************************************************************
    * 更新记录
    * 2007-1-5 更新:
    * 1,取字符串右侧的几个字符
    * 2,替换右侧的字符串
    ****************************************************************/

    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Text;

    namespace EC
    {
        /// <summary>
        /// 常用函数基类
        /// </summary>
        public class FunObject
        {
            #region 替换字符串
            /// <summary>
            /// 功能:替换字符
            /// </summary>
            /// <param name="strVAlue">字符串</param>
            /// <returns>替换掉'的字符串</returns>
            public static string FilterSQL(string strVAlue)
            {
                string str = "";
                str = strVAlue.Replace("''", "");
                return str;
            }
            #endregion

            #region 对表 表单内容进行转换HTML操作,
            /// <summary>
            /// 功能:对表 表单内容进行转换HTML操作,
            /// </summary>
            /// <param name="fString">html字符串</param>
            /// <returns></returns>
            public static string HtmlCode(string fString)
            {
                string str = "";
                str = fString.Replace(">", "&gt;");
                str = fString.Replace("<", "&lt;");
                str = fString.Replace(" ", "&nbsp;");
                str = fString.Replace("\n", "<br />");
                str = fString.Replace("\r", "<br />");
                str = fString.Replace("\r\n", "<br />");

                return str;
            }
    #endregion

            #region 判断是否:返回值:√ or ×
            /// <summary>
            /// 判断是否:返回值:√ or ×
            /// </summary>
            /// <param name="b">true 或false</param>
            /// <returns>√ or ×</returns>
            public static string Judgement(bool b)
            {
                string s = "";
                if (b == true)
                    s = "<b><font color=#009900>√</font></b>";
                else
                    s = "<b><font color=#FF0000>×</font></b>";
                return s;
            }
            #endregion

            #region 截取字符串
            /// <summary>
            /// 功能:截取字符串长度
            /// </summary>
            /// <param name="str">要截取的字符串</param>
            /// <param name="length">字符串长度</param>
            /// <param name="flg">true:加...,flase:不加</param>
            /// <returns></returns>
            public static string GetString(string str, int length, bool flg)
            {
                int i = 0, j = 0;
                foreach (char chr in str)
                {
                    if ((int)chr > 127)
                    {
                        i += 2;
                    }
                    else
                    {
                        i++;
                    }
                    if (i > length)
                    {
                        str = str.Substring(0, j);
                        if (flg)
                            str += "......";
                        break;
                    }
                    j++;
                }
                return str;
            }
            #endregion

            #region 截取字符串+…
            /// <summary>
            /// 截取字符串+…
            /// </summary>
            /// <param name="strInput"></param>
            /// <param name="intlen"></param>
            /// <returns></returns>
            public static string CutString(string strInput, int intlen)//截取字符串
            {
                ASCIIEncoding ascii = new ASCIIEncoding();
                int intLength = 0;
                string strString = "";
                byte[] s = ascii.GetBytes(strInput);
                for (int i = 0; i < s.Length; i++)
                {
                    if ((int)s[i] == 63)
                    {
                        intLength += 2;
                    }
                    else
                    {
                        intLength += 1;
                    }

                    try
                    {
                        strString += strInput.Substring(i, 1);
                    }
                    catch
                    {
                        break;
                    }

                    if (intLength > intlen)
                    {
                        break;
                    }
                }
                //如果截过则加上半个省略号
                byte[] mybyte = System.Text.Encoding.Default.GetBytes(strInput);
                if (mybyte.Length > intlen)
                {
                    strString += "…";
                }
                return strString;
            }
            #endregion

            #region 字符串分函数
            /// <summary>
            /// 字符串分函数
            /// </summary>
            /// <param name="strID"></param>
            /// <param name="index"></param>
            /// <param name="Separ"></param>
            /// <returns></returns>
            public string StringSplit(string strings, int index, string Separ)
            {
                string[] s = strings.Split(char.Parse(Separ));
                return s[index];
            }
    #endregion

            #region 分解字符串为数组
            /// <summary>
            /// 字符串分函数
            /// </summary>
            /// <param name="str">要分解的字符串</param>
            /// <param name="splitstr">分割符,可以为string类型</param>
            /// <returns>字符数组</returns>
            public static string[] splitstr(string str, string splitstr)
            {
                if (splitstr != "")
                {
                    System.Collections.ArrayList c = new System.Collections.ArrayList();
                    while (true)
                    {
                        int thissplitindex = str.IndexOf(splitstr);
                        if (thissplitindex >= 0)
                        {
                            c.Add(str.Substring(0, thissplitindex));
                            str = str.Substring(thissplitindex + splitstr.Length);
                        }
                        else
                        {
                            c.Add(str);
                            break;
                        }
                    }
                    string[] d = new string[c.Count];
                    for (int i = 0; i < c.Count; i++)
                    {
                        d[i] = c[i].ToString();
                    }
                    return d;
                }
                else
                {
                    return new string[] { str };
                }
            }
            #endregion

            #region URL编码
            /// <summary>
            /// URL编码
            /// </summary>
            /// <param name="str">字符串</param>
            /// <returns></returns>
            public static string UrlEncoding(string str)
            {
                byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str);
                return System.Text.Encoding.UTF8.GetString(bytes).ToString();
            }
            #endregion

            #region 获取Web.config中的配置字段值
            /// <summary>
            /// 获取全局配置参数
            /// </summary>
            /// <param name="key">键名</param>
            /// <returns>参数</returns>
            public static string GetApp(string key)
            {
                System.Configuration.AppSettingsReader appr = new System.Configuration.AppSettingsReader();
                try
                {
                    string str = (string)appr.GetValue(key, typeof(string));
                    if (str == null || str == "") return null;
                    return str;
                }
                catch (Exception E) { }
                return null;
            }

            #endregion

            #region 根据传入的字符串是否为yes/no返回Bit
            /// <summary>
            /// 根据传入的字符串是否为yes/no返回Bit
            /// </summary>
            /// <param name="flg"></param>
            /// <returns></returns>
            public static int GetBitBool(string flg)
            {
                int str = 0;
                switch (flg.ToLower())
                {
                    case "yes":
                        str = 1;
                        break;
                    case"no":
                        str = 0;
                        break;
                    default:
                        break;
                }
                return str;
            }
            #endregion

            #region Html编码
            /// <summary>
            /// HTML编码
            /// </summary>
            /// <param name="strInput"></param>
            /// <returns></returns>
            public static string HtmlEncode(string strInput)
            {
                string str;
                try
                {
                    str = HttpContext.Current.Server.HtmlEncode(strInput);
                }
                catch
                {
                    str = "error";
                }
                return str;
            }
            /// <summary>
            /// HTML解码
            /// </summary>
            /// <param name="strInput"></param>
            /// <returns></returns>
            public static string HtmlDecode(string strInput)
            {
                string str;
                try
                {
                    str = HttpContext.Current.Server.HtmlDecode(strInput);
                }
                catch
                {
                    str = "error";
                }
                return str;
            }
            #endregion      

     #region 检测一个字符符,是否在另一个字符中,存在,存在返回true,否则返回false
            /// <summary>
            /// 检测一个字符符,是否在另一个字符中,存在,存在返回true,否则返回false
            /// </summary>
            /// <param name="srcString">原始字符串</param>
            /// <param name="aimString">目标字符串</param>
            /// <returns></returns>
            public static bool IsEnglish(string srcString, string aimString)
            {
                bool Rev = true;
                string chr;
                if (aimString == "" || aimString == null) return false;
                for (int i = 0; i < aimString.Length; i++)
                {
                    chr = aimString.Substring(i, 1);
                    if (srcString.IndexOf(chr) < 0)
                    {
                        return false;
                        break;
                    }

                }
                return Rev;
            }
            #endregion

            #region 检测字符串中是否含有中文及中文长度
            /// <summary>
            /// 检测字符串中是否含有中文及中文长度
            /// </summary>
            /// <param name="str">要检测的字符串</param>
            /// <returns>中文字符串长度</returns>
            public static int CnStringLength(string str)
            {
                ASCIIEncoding n = new ASCIIEncoding();
                byte[] b = n.GetBytes(str);
                int l = 0;  // l 为字符串之实际长度
                for (int i = 0; i <= b.Length - 1; i++)
                {
                    if (b[i] == 63)  //判断是否为汉字或全脚符号
                    {
                        l++;
                    }
                }
                return l;
           
            }
            #endregion  

     #region 取字符串右侧的几个字符
            /// <summary>
            /// 取字符串右侧的几个字符
            /// </summary>
            /// <param name="str">字符串</param>
            /// <param name="length">右侧的几个字符</param>
            /// <returns></returns>
            public static  string GetStrRight(string str, int length)
            {
                string Rev = "";

                if (str.Length < length)
                {
                    Rev = str;

                }
                else
                {
                    Rev = str.Substring(str.Length - length, length);
                }
                return Rev;


            }
            #endregion

            #region 替换右侧的字符串

            /// <summary>
            /// 替换右侧的字符串
            /// </summary>
            /// <param name="str">字符串</param>
            /// <param name="strsrc">右侧的字符串</param>
            /// <param name="straim">要替换为的字符串</param>
            /// <returns></returns>
            public static  string RepStrRight(string str, string strsrc, string straim)
            {

                string Rev = "";
                if (GetStrRight(str, strsrc.Length) != strsrc)
                {
                    Rev = str;
                }
                else
                {
                    Rev = str.Substring(0, str.Length - strsrc.Length).ToString() + straim.ToString();
                }
                return Rev;
            }
            #endregion
        }

    }

  • 相关阅读:
    C#选择文件、选择文件夹、打开文件
    如何去掉数据库重复记录并且只保留一条记录
    SQL总结——存储过程
    SQL Server中的标识列
    c# 获取键盘的输入
    C# 中BindingSource 的用法
    WinForm timer 控件
    C#获得窗口控件句柄
    checkedListBox的使用
    c++从文件中读取特定字符串问题的总结
  • 原文地址:https://www.cnblogs.com/zhangchenliang/p/736703.html
Copyright © 2020-2023  润新知