Кодировка кириллицы в письмах c # - PullRequest
4 голосов
/ 29 марта 2012

Я пытаюсь отправить электронное письмо через c # и использовать следующий код:

public static bool SendSMTPMail(string smtphost, int smtpport, string smtplogin, string smtppassword, string from, string to, string subject, string body, bool isHtml)
{
  try
  {               
    using (MailMessage message = new MailMessage(from, to, subject, body))
    {
      message.IsBodyHtml = isHtml;
      message.SubjectEncoding = System.Text.Encoding.UTF8;
      message.BodyEncoding = System.Text.Encoding.UTF8;

      SmtpClient mailClient = new SmtpClient(smtphost, smtpport);
      mailClient.EnableSsl = false;
      mailClient.DeliveryMethod = SmtpDeliveryMethod.Network;
      mailClient.Credentials = new NetworkCredential(smtplogin, smtppassword);

      mailClient.Send(message);
      return true;
    }
  }
  catch
  {
    return false;
  }
}

Работает нормально, когда письма принимаются в Windows, но когда пользователь пытается прочитать их в MacOS - заголовок темы находится в неправильной кодировке. Если я установлю предметную кодировку в Windows-1251, она будет работать хорошо, но только для кириллицы, и я собираюсь отправить азиатскую тоже ...

Как я могу отправлять электронные письма, используя чистый Unicode?

И второй вопрос - если я добавлю к письму какое-либо вложение, оно будет добавлено с дополнительными файлами - «filelist.xml» и «header.htm».

Как от них избавиться?

Thaks!

Ответы [ 2 ]

1 голос
/ 29 марта 2012

Лучшее решение состоит в том, чтобы создать структуру или автоматизацию, которая навязывает системе различные кодировки в соответствии с форматом получателя:

  • универсальный utf8
  • ISO XXX для кириллицы
  • iso xxy для китайского

и т. Д.

0 голосов
/ 06 апреля 2012

О моем втором найденном вопросе это , и это помогает

Из-за проблем с кодировкой я выбираю отправку писем с темами только на английском языке ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...