一个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(">", ">");
        str = fString.Replace("<", "<");
        str = fString.Replace(" ", " ");
        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 == 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 = c.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 == 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
  }

}  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值