Asp.net 字符串操作基类(安全,替换,分解等)
Asp.net 字符串操作基类(安全,替换,分解等)
发布时间:2016-12-29 来源:查字典编辑
摘要:/*********************************************************************...

/**********************************************************************************

*

* 功能说明:常用函数基类

* 作者: 刘功勋;

* 版本: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("rn", "<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

}

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新asp.net教程学习
热门asp.net教程学习
编程开发子分类