就是像这样的乱码
DQoJCQkJICAgICAgICAgICAgICAgPGh0bWw+DQo8Ym9keT4NCjx0YWJsZSB3aWR0aD0nNDklJyAgYm9yZGVyPScxJyBjZWxsc3BhY2luZz0nMCcgY2VsbHBhZGRpbmc9JzAnPg0KICA8dHI+DQogICAgPHRkIHdpZHRoPScyNyUnIGhlaWdodD0nMzcnIGFsaWduPSdyaWdodCc+PHA+5rWB56iLIDogPC9wPjwvdGQ+DQogICAgPHRkIHdpZHRoPSc3MyUnPiZuYnNwOzAyLuazleS6uueroOeoi+WNj+iurijorr7nq4sv5Y+Y5pu0KeWuoeaJuVs2MDkyXTwvdGQ+DQogIDwvdHI+DQogIDx0cj4NCiAgICA8dGQgaGVpZ2h0PScyOScgYWxpZ249J3JpZ2h0Jz48cD7kuLvpopggOiA8L3A+PC90ZD4NCiAgICA8dGQ+Jm5ic3A7dGVzdDwvdGQ+DQogIDwvdHI+DQogIDx0cj4NCiAgICA8dGQgaGVpZ2h0PSczMScgYWxpZ249J3JpZ2h0Jz48cD7lj5HotbfkurogOiA8L3A+PC90ZD4NCiAgICA8dGQ+Jm5ic3A7QU5aOTkwMi7osKLlvrfmmI4o5YaF572R5byA5Y+
问题是这样的,我收取邮件,如果是UTF8的邮件,得到的内容就像上面的东西那样,由英文和数字及很少的+组成,不知道怎么解码,我想到在asp.net 生成的页面里面通常也有与这很像的东西,可能是一样的编码方式,不知道有哪位高手能给点提示!

解决方案 »

  1.   

    我查到原因了,这个是将UTF8编码的文字用base64编码,解码很容易的,
    string Message = "asdfkjhjk5jk34kh3kksdfrdsfjgirjl";
    byte[] temp = Convert.FromBase64();
    string result = Encoding.UTF8.GetString(temp)这样重新解码就可以了
      

  2.   

    string Message = "asdfkjhjk5jk34kh3kksdfrdsfjgirjl"; 
    byte[] temp = Convert.FromBase64String(Message); 
    string result = Encoding.UTF8.GetString(temp) 
    更正一下,上面那个是根据印象写的,有点错!
      

  3.   


        /// <summary>
        /// 将Base64编码的字符串解码为指定字符集的字符串
        /// </summary>
        /// <param name="code">经base64编码的字符串</param>
        /// <param name="encode">指定字符集,为空则默认为utf-8</param>
        public string DecodeBase64(string code, string encode) //string code_type,
        {
            #region
            if (encode == "")
            {
                encode = "utf-8";
            }
            string decode = "";
            byte[] bytes = DecodeBase64(code);
            try
            {
                decode = System.Text.Encoding.GetEncoding(encode).GetString(bytes);
            }
            catch
            {
                decode = code;
            }
            return decode;
            #endregion
        }