编码 - 显示荷兰字符的问题

时间:2012-08-23 11:53:42

标签: c# encoding

我想动态创建电子邮件并发送。到目前为止一直很好,问题在于它是荷兰语并且无法正确显示。

我这样做:

// Body Html
if (!string.IsNullOrEmpty(emailMessage.BodyHtml))
{
    var encoding = Encoding.UTF32;

    byte[] byteArray = Encoding.GetEncoding("iso-8859-1").GetBytes(emailMessage.BodyHtml);
    byte[] unicodeArray = Encoding.Convert(Encoding.GetEncoding("iso-8859-1"), encoding, byteArray);
    emailMessage.BodyHtml = encoding.GetString(unicodeArray);



    System.Net.Mime.ContentType ct = new System.Net.Mime.ContentType();
    ct.MediaType = MediaTypeNames.Text.Html;
    AlternateView htmlView = AlternateView.CreateAlternateViewFromString(emailMessage.BodyHtml, ct);
    mailMessage.AlternateViews.Add(htmlView);
    htmlView.TransferEncoding = TransferEncoding.QuotedPrintable;
}

try
{

    smtpSender.Send(mailMessage);
}

邮件应包含Financiële details但是当我打开包含Outlook的邮件时,我会看到Financiele details

如何解决?

1 个答案:

答案 0 :(得分:1)

请查看Outlook mailitem的InternetCodepage属性。我在新的电子邮件中遇到了类似的问题,我在其中插入了一封existiing电子邮件中的文本,其中德语的变形金刚没有正确显示。在我将新电子邮件中的InternetCodepage设置为原始电子邮件的适当值后,解决了这个问题。 有关此属性的更多信息以及可能值列表,请参阅http://msdn.microsoft.com/en-us/library/office/ff860730.aspx