常用的一些字符串处理函数

Posted on 2006-11-12 05:55  Leon0812  阅读(231)  评论(0编辑  收藏  举报

 

  1using System;
  2using System.Collections.Generic;
  3using System.Text;
  4using System.Web.Security;
  5using System.Security.Cryptography;
  6using System.Text.RegularExpressions;
  7
  8public class StringHelper
  9    {
 10        /// <summary>
 11        ///将字符串格式化为HTML
 12        /// </summary>
 13        /// <param name="normalStr">所要格式化的字符串</param>
 14        /// <returns>返回格式化后的HTML代码</returns>

 15        public static string FormatToHtml(string normalStr)
 16        {
 17            normalStr = System.Web.HttpContext.Current.Server.UrlDecode(normalStr);
 18            normalStr = System.Web.HttpContext.Current.Server.HtmlEncode(normalStr);
 19
 20            StringBuilder html = new StringBuilder(normalStr);
 21
 22            html.Replace(" ""&nbsp;");
 23            html.Replace("\r\n""<br />");
 24
 25            return html.ToString();
 26        }

 27
 28        /// <summary>
 29        /// 将HTML转为普通文本格式
 30        /// </summary>
 31        /// <param name="htmlStr">所要转换的HTML字符串</param>
 32        /// <returns>返回普通文本</returns>

 33        public static string RestoreFromHtml(string htmlStr)
 34        {
 35            htmlStr = System.Web.HttpContext.Current.Server.HtmlDecode(htmlStr);
 36
 37            StringBuilder normalStr = new StringBuilder(htmlStr);
 38
 39            normalStr.Replace("<br />""\r\n");
 40
 41            normalStr.Replace("&quot;""\"");
 42            normalStr.Replace("&lt;""<");
 43            normalStr.Replace("&gt;"">");
 44            normalStr.Replace("&nbsp;"" ");
 45            normalStr.Replace("&amp;""&");
 46
 47            return normalStr.ToString();
 48        }

 49
 50        /// <summary>
 51        /// 
 52        /// </summary>
 53        /// <param name="str"></param>
 54        /// <param name="length"></param>
 55        /// <returns></returns>

 56        public static string CutString(string str, int length)
 57        {
 58            if (str != null && str.Length > length)
 59            {
 60                return string.Format("{0}.", str.Substring(0, length));
 61            }

 62            else
 63            {
 64                return str;
 65            }

 66        }

 67
 68        /// <summary>
 69        /// 
 70        /// </summary>
 71        /// <param name="withOut"></param>
 72        /// <returns></returns>

 73        public static string GetCurrentQueryString(string withOut)
 74        {
 75            string _getkeys = "";
 76            string _result = "";
 77
 78            if (System.Web.HttpContext.Current.Request.QueryString != null)
 79            {
 80                for (int i = 0; i < System.Web.HttpContext.Current.Request.QueryString.Count; i++)
 81                {
 82                    _getkeys = System.Web.HttpContext.Current.Request.QueryString.Keys[i];
 83                    if (_getkeys != withOut)
 84                    {
 85                        _result = string.Format("{0}&{1}={2}", _result, _getkeys, System.Web.HttpContext.Current.Request.QueryString[_getkeys]);
 86                    }

 87                }

 88            }

 89
 90            return _result;
 91        }

 92
 93        /// <summary>
 94        /// 对字符串进行加密(不可逆)
 95        /// 0 is SHA1,1 is MD5
 96        /// </summary>
 97        /// <param name="Password">要加密的字符串</param>
 98        /// <param name="Format">加密方式,0 is SHA1,1 is MD5</param>
 99        /// <returns></returns>

100        public static string HashEncrypt(string Password, int Format)
101        {
102            string strResult = "";
103            switch (Format)
104            {
105                case 0:
106                    strResult = FormsAuthentication.HashPasswordForStoringInConfigFile(Password, "SHA1");
107                    break;
108                case 1:
109                    strResult = FormsAuthentication.HashPasswordForStoringInConfigFile(Password, "MD5");
110                    break;
111                default:
112                    strResult = Password;
113                    break;
114            }

115
116            return strResult;
117        }

118
119        /// <summary>
120        /// 使用SHA1Managed类产生长度为160位哈希值。不需要提供密钥。
121        /// </summary>
122        /// <returns></returns>

123        public string SHA1ManagedHasher(string hashText)
124        {
125            byte[] SHA1Data = System.Text.Encoding.UTF8.GetBytes(hashText);
126
127            SHA1Managed Sha1 = new SHA1Managed();
128
129            byte[] Result = Sha1.ComputeHash(SHA1Data);
130
131            return Convert.ToBase64String(Result); //返回长度为28字节的字符串
132        }

133
134        防SQL注入式攻击代码
209}

Copyright © 2024 Leon0812
Powered by .NET 9.0 on Kubernetes