Asp.net 字符串操作基类(安全,替换,分解等)
发布时间:2020-03-15 21:44:46 所属栏目:Asp教程 来源:站长网
导读:Asp.net安全,替换,分解字符串的类
/********************************************************************************** * * 功能说明:常用函数基类 * 作者: 刘功勋; * 版本: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>字符串</param> /// <returns>替换掉'的字符串</returns> public static string FilterSQL(string strVAlue) { string str = ""; str = strVAlue.Replace("''", ""); return str; } #endregion #region 对表 表单内容进行转换HTML操作, /// <summary> /// 功能:对表 表单内容进行转换HTML操作, /// </summary> /// <param>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("rn", "<br />"); return str; } #endregion #region 判断是否:返回值:√ or × /// <summary> /// 判断是否:返回值:√ or × /// </summary> /// <param>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>要截取的字符串</param> /// <param>字符串长度</param> /// <param>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></param> /// <param></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></param> /// <param></param> /// <param></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>要分解的字符串</param> /// <param>分割符,可以为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>字符串</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>键名</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></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></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></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>原始字符串</param> /// <param>目标字符串</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>要检测的字符串</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>字符串</param> /// <param>右侧的几个字符</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>字符串</param> /// <param>右侧的字符串</param> /// <param>要替换为的字符串</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 } } (编辑:焦作站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |