自定义字符串加密与解码的类

   public class StringUtility
    {
        private static string ByteArrayToStr(byte[] by)
        {
            try
            {
                return Encoding.GetEncoding("gb2312").GetString(by);
            }
            catch
            {
                return "";
            }
        }


        public static string Base64ToString(string str)
        {
            try
            {
                return ByteArrayToStr(Convert.FromBase64String(str));
            }
            catch
            {
                return "";
            }
        }
        private static byte[] StrToByteArray(string str)
        {
            try
            {
                return Encoding.GetEncoding("gb2312").GetBytes(str);
            }
            catch
            {
                return null;
            }
        }


        public static string StringToBase64(string str)
        {
            try
            {
                return Convert.ToBase64String(StrToByteArray(str));
            }
            catch
            {
                return "";
            }
        }

        public static string EscapeStr(string str)
        {
            char[] cha = StringToBase64(str).Replace('/', '|').Replace('=', '-').ToCharArray();
            Array.Reverse(cha);
            return new string(cha);
        }

        public static string UnEscapeStr(string str)
        {
            char[] cha = str.ToCharArray();
            Array.Reverse(cha);
            return Base64ToString(new string(cha).Replace('|', '/').Replace('-', '='));
        }
    }

posted @ 2009-10-31 12:23  铞迩锒铛  阅读(203)  评论(0编辑  收藏  举报