1
當我開發我的電子郵件客戶端時,遇到了問題。我發現中文電子郵件附件的名稱是亂碼,當我發送帶有附件的電子郵件時,該附件的名稱包括中文從我的應用程序到電子郵件服務器,如果返回服務器。但它在電子郵件服務器上是正確的。另外,當我發送附件名稱包含來自另一客戶端的附件的電子郵件時,一切正常。感謝你所做的一切!如何在C#中將字符串從「GBK」轉換爲「UTF-8」?
當我開發我的電子郵件客戶端時,遇到了問題。我發現中文電子郵件附件的名稱是亂碼,當我發送帶有附件的電子郵件時,該附件的名稱包括中文從我的應用程序到電子郵件服務器,如果返回服務器。但它在電子郵件服務器上是正確的。另外,當我發送附件名稱包含來自另一客戶端的附件的電子郵件時,一切正常。感謝你所做的一切!如何在C#中將字符串從「GBK」轉換爲「UTF-8」?
你的意思是字符串存儲在一個字節數組中嗎?
string strSource = "abcdefg";
byte[] array2=Encoding.GetEncoding("gbk").GetBytes(strSource);
//get string from gbk
string str = Encoding.GetEncoding("gbk").GetString(array2);
//convert string to utf-8
byte[] array3 = Encoding.UTF8.GetBytes(str);
=================回答下面編輯,2016年8月1日=============
你應該用gbk來讀取附件的中文名稱,然後你將電子郵件內容改爲其他地方使用utf-8或gbk。 你可以試一試。
哇,很好的用戶名! – deerchao
我會建議檢查您的電子郵件發送相關的圖書館類,如果有任何相關的編碼,並與它一起玩。 – deerchao
非常感謝!但是,從我的客戶端發送的電子郵件在電子郵件服務器上看起來很正常。 – Administrator