华域联盟 .Net asp.net字符串处理类代码

asp.net字符串处理类代码

复制代码 代码如下:

using System;

using System.Collections;

using System.Collections.Generic;

using System.Text;

using System.Text.RegularExpressions;

using System.Security.Cryptography;

using System.IO;

using System.Text;

namespace StringClass

{

public class StringHelper

{

/// <summary>

/// 去掉字符串中的所有空格

/// </summary>

/// <param name="_str"></param>

/// <returns></returns>

public static string ReMoveBlank(string _str)

{

string strTemp = "";

CharEnumerator CEnumerator = _str.GetEnumerator();

while (CEnumerator.MoveNext())

{

byte[] array = new byte[1];

array = System.Text.Encoding.ASCII.GetBytes(CEnumerator.Current.ToString());

int asciicode = (short)(array[0]);

if (asciicode != 32)

{

strTemp += CEnumerator.Current.ToString();

}

}

return strTemp;

}

/// <summary>

/// 截取字符串并限制字符串长度,多于给定的长度+。。。

/// </summary>

/// <param name="str">待截取的字符串</param>

/// <param name="len">每行的长度,多于这个长度自动换行</param>

/// <param name="max">输出字符串最大的长度</param>

/// <returns></returns>

public static string CutStr(string str, int len, int max)

{

string s = "";

string sheng = "";

if (str.Length > max)

{

str = str.Substring(0, max);

sheng = "";

}

for (int i = 0; i < str.Length; i++)

{

int r = i % len;

int last = (str.Length / len) * len;

if (i != 0 && i <= last)

{

if (r == 0)

{

s += str.Substring(i - len, len) + "<br>";

}

}

else if (i > last)

{

s += str.Substring(i - 1);

break;

}

}

return s + sheng;

}

/// <summary>

/// 截取字符串,不限制字符串长度

/// </summary>

/// <param name="str">待截取的字符串</param>

/// <param name="len">每行的长度,多于这个长度自动换行</param>

/// <returns></returns>

public static string CutStr(string str, int len)

{

string s = "";

for (int i = 0; i < str.Length; i++)

{

int r = i % len;

int last = (str.Length / len) * len;

if (i != 0 && i <= last)

{

if (r == 0)

{

s += str.Substring(i - len, len) + "<br>";

}

}

else if (i > last)

{

s += str.Substring(i - 1);

break;

}

}

return s;

}

public static string PartSubString(string str, int len)

{

if (str.Length > len)

{

return str.Substring(0, len) + "...";

}

return str;

}

/// <summary>

///这个方法确保用户的输入不是恶毒的

/// </summary>

/// <param name="text">输入字符串</param>

/// <param name="maxLength">最大长度</param>

/// <returns>转换后的字符串</returns>

public static string InputText(string text, int maxLength)

{

text = text.Trim();

if (string.IsNullOrEmpty(text))

return string.Empty;

if (text.Length > maxLength)

text = text.Substring(0, maxLength);

text = Regex.Replace(text, "[\\s]{2,}", " "); //two or more spaces

text = Regex.Replace(text, "(<[b|B][r|R]/*>)+|(<[p|P](.|\\n)*?>)", "\n"); //<br>

text = Regex.Replace(text, "(\\s*&[n|N][b|B][s|S][p|P];\\s*)+", " "); //&nbsp;

text = Regex.Replace(text, "<(.|\\n)*?>", string.Empty); //any other tags

text = text.Replace("'", "''");

return text;

}

/// <summary>

/// 字符串中大写字符转小写

/// </summary>

/// <param name="str"></param>

/// <returns></returns>

public static string StringToLower(string str)

{

Char[] a = str.ToCharArray();

string strTemp = "";

for (int i = 0; i < a.Length; i++)

{

if (Convert.ToInt32(a[i]) >= 65 && Convert.ToInt32(a[i]) <= 90)

strTemp += a[i].ToString().ToLower();

else

strTemp += a[i].ToString();

}

return strTemp;

}

/// <summary>

/// 加密

/// </summary>

/// <param name="str"></param>

/// <param name="key">必须是8位的字符串</param>

/// <returns></returns>

public static string Encode(string str, int keyIndex)

{

ArrayList alKey = new ArrayList();

alKey.Add("BookT@#+!NumBq2");

alKey.Add("MagaZine@(21&*ID5");

alKey.Add("ThesisDSHI}._Y");

string key = alKey[keyIndex].ToString();

DESCryptoServiceProvider provider = new DESCryptoServiceProvider();

provider.Key = Encoding.ASCII.GetBytes(key.Substring(0, 8));

provider.IV = Encoding.ASCII.GetBytes(key.Substring(0, 8));

byte[] bytes = Encoding.GetEncoding("GB2312").GetBytes(str);

MemoryStream stream = new MemoryStream();

CryptoStream stream2 = new CryptoStream(stream, provider.CreateEncryptor(), CryptoStreamMode.Write);

stream2.Write(bytes, 0, bytes.Length);

stream2.FlushFinalBlock();

StringBuilder builder = new StringBuilder();

foreach (byte num in stream.ToArray())

{

builder.AppendFormat("{0:X2}", num);

}

stream.Close();

return builder.ToString();

}

/// <summary>

/// Des 解密 GB2312

/// </summary>

/// <param name="str">Desc string</param>

/// <param name="key">Key ,必须为8位 </param>

/// <returns></returns>

public static string Decode(string str, int keyIndex)

{

ArrayList alKey = new ArrayList();

alKey.Add("BookT@#+!NumBq2");

alKey.Add("MagaZine@(21&*ID5");

alKey.Add("ThesisDSHI}._Y");

string key = alKey[keyIndex].ToString();

DESCryptoServiceProvider provider = new DESCryptoServiceProvider();

provider.Key = Encoding.ASCII.GetBytes(key.Substring(0, 8));

provider.IV = Encoding.ASCII.GetBytes(key.Substring(0, 8));

byte[] buffer = new byte[str.Length / 2];

for (int i = 0; i < (str.Length / 2); i++)

{

int num2 = Convert.ToInt32(str.Substring(i * 2, 2), 0x10);

buffer[i] = (byte)num2;

}

MemoryStream stream = new MemoryStream();

CryptoStream stream2 = new CryptoStream(stream, provider.CreateDecryptor(), CryptoStreamMode.Write);

stream2.Write(buffer, 0, buffer.Length);

stream2.FlushFinalBlock();

stream.Close();

return Encoding.GetEncoding("GB2312").GetString(stream.ToArray());

}

/// <summary>

/// MD5不可逆加密 32位

/// </summary>

/// <param name="s"></param>

/// <param name="_input_charset"></param>

/// <returns></returns>

public static string GetMD5_32(string str1)

{

string cl1 = str1;

string pwd = "";

MD5 md5 = MD5.Create();

// 加密后是一个字节类型的数组

byte[] s = md5.ComputeHash(Encoding.Unicode.GetBytes(cl1));

// 通过使用循环,将字节类型的数组转换为字符串,此字符串是常规字符格式化所得

for (int i = 0; i < s.Length; i++)

{

// 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符

pwd = pwd + s[i].ToString("x");

}

return pwd;

}

/// <summary>

/// MD5不可逆加密 16位

/// </summary>

/// <param name="ConvertString"></param>

/// <returns></returns>

public static string GetMd5_16(string ConvertString)

{

MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();

string t2 = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(ConvertString)), 4, 8);

t2 = t2.Replace("-", "");

return t2;

}

}

}
您可能感兴趣的文章:

  • Asp.Net中的字符串和HTML十进制编码转换实现代码
  • ASP.NET过滤HTML字符串方法总结
  • ASP.NET JSON字符串与实体类的互转换示例代码
  • ASP.NET两个截取字符串的方法分享
  • ASP.NET从字符串中查找字符出现次数的具体实现方法
  • asp.net判断字符串是否是中文的方法
  • asp.net 计算字符串中各个字符串出现的次数
  • asp.net中将某字符串切割成阵列并排序列出
  • asp.net分割字符串的几种方法小结
  • ASP.NET通过自定义函数实现对字符串的大小写切换功能

本文由 华域联盟 原创撰写:华域联盟 » asp.net字符串处理类代码

转载请保留出处和原文链接:https://www.cnhackhy.com/43836.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部