MailMessage.Subject芬兰语编码

时间:2016-01-15 09:17:59

标签: c# encoding mailmessage

我正在尝试在主题中发送带有“Käyttörajanmuutos”的芬兰电子邮件。

尝试了不同的编码:

message.Subject = "=?iso-8859-1?B?" + Convert.ToBase64String(Encoding.GetEncoding(1252).GetBytes(strSubject)) + "?=";

message.Subject = "=?utf-8?B?" + Convert.ToBase64String(Encoding.UTF8.GetBytes(strSubject)) + "?=";

结果我得到了:

Käyttörajan muutos

有没有人能解决这个问题?

1 个答案:

答案 0 :(得分:-1)

主要问题是,当我从Request实施主题时,我正在使用

HttpUtility.HtmlEncode(Request.Form["strSubject"]);

这已经将我的字符串编码为"Käyttörajan muutos"

所以,

message.Subject = "=?utf-8?B?" + Convert.ToBase64String(Encoding.UTF8.GetBytes(strSubject)) + "?=";

作品。