共用quoted-printable解碼(C#)-轉載

來源:互聯網
上載者:User

原文連結:
http://www.cnblogs.com/jerrie/archive/2006/07/29/462798.html#commentform

今天終於把郵件的收發搞定,藉助於jmail。雖然不是很滿意,但準系統都能實現。過程中,也遇到過不少問題,如解碼問題,收未讀郵件問題等等。
      郵件解碼,一般分為base64和quoted-printable,在網上曾搜尋過,但未找到C#版的(可能是未努力去找),只找到C++和C兩個版本的。在這裡,俺把C#版的quoted-printable解碼發布出來,供大家分享:

 1quoted-printable解碼#region quoted-printable解碼
 2        private string QPUnEncryCode(string source)
 3        {
 4            source=source.Replace ("=\r\n","");
 5            int len=source.Length ;
 6            string dest=string.Empty ;
 7            int i=0;
 8            while(i<len)
 9            {
10                string temp=source.Substring (i,1);
11                if(temp=="=")
12                {
13                    int code=Convert.ToInt32 (source.Substring (i+1,2),16);
14                    if(Convert.ToInt32 (code.ToString (),10)<127) 
15                    {
16                        dest+=((char)code).ToString ();
17                        i=i+3;
18                    }
19                    else  
20                    {
21                        dest+=System.Text.Encoding.Default.GetString(new byte []{Convert.ToByte  (source.Substring (i+1,2),16),Convert.ToByte  (source.Substring (i+4,2),16)}) ;
22                        i=i+6;
23                    }
24                }
25                else
26                {
27                    dest+=temp;
28                    i++;
29                }
30            }
31            return dest;
32        }
33
34        #endregion

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.