编码

//url编码
public static string ConvertUrlEncode(string DataStr)
      {
         return System.Web.HttpUtility.UrlEncode(DataStr);
      }


//Base64
public static string ConvertBase64(string DataStr)
      {
         byte[] bytes = Encoding.Default.GetBytes(DataStr);
         return Convert.ToBase64String(bytes);
      }

/// <summary>
      /// 获得32位的MD5加密
      /// </summary>
      /// <param name="input"></param>
      /// <returns></returns>
      public static string GetMD5_32(string input)
      {
         System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create();
         byte[] data = md5.ComputeHash(System.Text.Encoding.Default.GetBytes(input));
         StringBuilder sb = new StringBuilder();
         for (int i = 0; i < data.Length; i++)
         {
            sb.Append(data[i].ToString("x2"));
         }
         return sb.ToString();
      }

      /// <summary>
      /// 获得16位的MD5加密
      /// </summary>
      /// <param name="input"></param>
      /// <returns></returns>
      public static string GetMD5_16(string input)
      {
         return GetMD5_32(input).Substring(8, 16);
      }
      /// <summary>
      /// 获得8位的MD5加密
      /// </summary>
      /// <param name="input"></param>
      /// <returns></returns>
      public static string GetMD5_8(string input)
      {
         return GetMD5_32(input).Substring(8, 8);
      }
      /// <summary>
      /// 获得4位的MD5加密
      /// </summary>
      /// <param name="input"></param>
      /// <returns></returns>
      public static string GetMD5_4(string input)
      {
         return GetMD5_32(input).Substring(8, 4);
      }

      public static string MD5EncryptHash(String input)
      {
         MD5 md5 = new MD5CryptoServiceProvider();
         //the GetBytes method returns byte array equavalent of a string
         byte[] res = md5.ComputeHash(Encoding.Default.GetBytes(input), 0, input.Length);
         char[] temp = new char[res.Length];
         //copy to a char array which can be passed to a String constructor
         Array.Copy(res, temp, res.Length);
         //return the result as a string
         return new String(temp);
      }

 

posted @ 2016-12-01 16:48  文乱来  阅读(193)  评论(0)    收藏  举报