Кодировать и декодировать в c # asp.net?

Я использую Кодирование и декодирование:

Для кодирования:

private string EncodeServerName(string ServerName)
    {
      byte[] NameEncodein = new byte[ServerName.Length];
      NameEncodein = System.Text.Encoding.UTF8.GetBytes(ServerName);
      string EcodedName = Convert.ToBase64String(NameEncodein);
      return EcodedName;
    }

и декодирования:

     public string DecoAndGetServerName(string Servername)
     {
         System.Text.UTF8Encoding encoder = new System.Text.UTF8Encoding();
         System.Text.Decoder strDecoder = encoder.GetDecoder();
         byte[] to_DecodeByte = Convert.FromBase64String(Servername);
         int charCount = strDecoder.GetCharCount(to_DecodeByte, 0, to_DecodeByte.Length);
         char[] decoded_char = new char[charCount];
         strDecoder.GetChars(to_DecodeByte, 0, to_DecodeByte.Length, decoded_char,0);
         string Name = new string(decoded_char);

         return Name;
     }

Я отправляю ServerName: DEV-SQL1 \ SQL2008

Он закодирован: REVWLVNRTDFcU1FMMjAwOA ==

Я снова хочу декодировать, но получаю исключение: в строке:

byte [] to_DecodeByte = Convert.FromBase64String (Servername);

Исключение IS:

Ввод не является допустимой строкой Base-64, так как он содержит символ, отличный от base 64,

более двух символов заполнения или символ, не являющийся пробелом, среди символов заполнения. `

Как решить эту проблему. .

Пожалуйста, помогите мне

7
задан 25 August 2011 в 06:09
поделиться