日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

iphone、Android接收System.Net.Mail发的邮件标题乱码

發(fā)布時間:2023/12/13 Android 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iphone、Android接收System.Net.Mail发的邮件标题乱码 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

參考地址:http://blog.csdn.net/whowhen21/article/details/5959225

在做項目時候,用到.Net的System.Net.Mail發(fā)送郵件,經(jīng)測試,發(fā)現(xiàn)如果標(biāo)題過長,收到的就會是亂碼了(那種Base64格式的數(shù)據(jù)),幾經(jīng)測試,發(fā)現(xiàn)只能放60個中文漢字,多一個標(biāo)點(diǎn)就出問題,后來想辦法,解決了,現(xiàn)奉上解決方案~

把郵件標(biāo)題轉(zhuǎn)換成base64編碼的,但是有特定的要求

view plaincopy to clipboardprint?
  • private?static?void?Send()????
  • {????
  • ????StringBuilder?title?=?new?StringBuilder();????
  • ????title.Append("=?utf-8?B?");????
  • ????title.Append(ToBase64("長長的郵件標(biāo)題測試"));????
  • ????title.Append("?=");????
  • ????SendMail(title,?"內(nèi)容");????
  • }????
  • ????
  • private?string?ToBase64(string?instr)????
  • {????
  • ????byte[]?bt?=?Encoding.GetEncoding("utf-8").GetBytes(instr);????
  • ????return?Convert.ToBase64String(bt);????
  • }????
  • ?

    那里的utf-8是你設(shè)定的郵件編碼,要和下面ToBase64中的一致才行。

    當(dāng)然,如果標(biāo)題還是過長的話,這種還是會出現(xiàn)亂碼,解決方法就是把標(biāo)題拆分成若干段,沒段都用StringBuilder那里的處理方法,最后在拼接起來作為標(biāo)題,發(fā)送時沒有問題的。至此,這個問題就解決啦。

    不過也許這個問題和郵件服務(wù)器有關(guān)吧,我是在自己的服務(wù)器上才出現(xiàn)這個問題,163之類的我沒測。希望能對遇到相同問題的童鞋有所幫助。

    轉(zhuǎn)載于:https://www.cnblogs.com/blogsChen/archive/2012/10/10/2718521.html

    總結(jié)

    以上是生活随笔為你收集整理的iphone、Android接收System.Net.Mail发的邮件标题乱码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。