邮件中文显示为乱码
解決方法:
string ? s ? = ? "......your ? mail ? body ? here......"; ?
? ?
? byte[] ? bs ? = ? Convert.FromBase64String(s); ?
? String ? s2 ? = ? System.Text.Encoding.GetEncoding("GB2312").GetString(bs);
如果字符串中含有中文,需要先轉(zhuǎn)換為二進制字符串再進行編碼否則報““Base-64字符中的無效字符”的錯誤。
byte[] ? outbyte=System.Text.Encoding.GetEncoding("GB2312").GetBytes(s.ToCharArray());??
說明:
?[C#] ?
? public ? static ? byte[] ? FromBase64String( ?
? ? ? ? string ? s ?
? ); ?
? ?
? s ? 由基 ? 64 ? 數(shù)字、空白字符和尾隨填充字符組成。從零開始以升序排列的以 ? 64 ? 為基的數(shù)字為大寫字符“A”到“Z”、小寫字符“a”到“z”、數(shù)字“0”到“9”以及符號“+”和“/”。 ?
? ?
? 空白字符為 ? Tab、空格、回車和換行。s ? 中可以出現(xiàn)任意數(shù)目的空白字符,因為所有空白字符都將被忽略。 ?
? ?
? 無值字符“=”用于尾部的空白。s ? 的末尾可以包含零個、一個或兩個填充字符。???
?
string ? s ? = ? "......your ? mail ? body ? here......"; ?
? ?
? byte[] ? bs ? = ? Convert.FromBase64String(s); ?
? String ? s2 ? = ? System.Text.Encoding.GetEncoding("GB2312").GetString(bs);
如果字符串中含有中文,需要先轉(zhuǎn)換為二進制字符串再進行編碼否則報““Base-64字符中的無效字符”的錯誤。
byte[] ? outbyte=System.Text.Encoding.GetEncoding("GB2312").GetBytes(s.ToCharArray());??
說明:
?[C#] ?
? public ? static ? byte[] ? FromBase64String( ?
? ? ? ? string ? s ?
? ); ?
? ?
? s ? 由基 ? 64 ? 數(shù)字、空白字符和尾隨填充字符組成。從零開始以升序排列的以 ? 64 ? 為基的數(shù)字為大寫字符“A”到“Z”、小寫字符“a”到“z”、數(shù)字“0”到“9”以及符號“+”和“/”。 ?
? ?
? 空白字符為 ? Tab、空格、回車和換行。s ? 中可以出現(xiàn)任意數(shù)目的空白字符,因為所有空白字符都將被忽略。 ?
? ?
? 無值字符“=”用于尾部的空白。s ? 的末尾可以包含零個、一個或兩個填充字符。???
?
轉(zhuǎn)載于:https://www.cnblogs.com/zgqys1980/archive/2006/12/31/608772.html
總結
- 上一篇: 【转贴】C#中事件处理的个人体会
- 下一篇: xml基本概念