Imap西里尔文邮件

时间:2012-10-18 10:55:53

标签: c# .net gmail imap gmail-imap

我使用mailsystem.NET库在收件箱中放置一条消息。这是我的代码:

Imap4Client imap = new Imap4Client();
imap.ConnectSsl("imap.gmail.com", 993);
imap.Login(mylogin, mypassword);
Mailbox mails;
mails = imap.SelectMailbox("INBOX");
Message commomMessage = new Message();
commomMessage.From = new Address("someAddress", "someName");
commomMessage.To.Add(mylogin, "myName");
commomMessage.Subject = "someSubject";
commomMessage.BodyHtml.Text = "Привет мир";//or some cyrillic text 
commomMessage.Date = DateTime.Now;
mails.Append(commomMessage);

当我打开我的Gmail收件箱时,我会看到此邮件,但正文包含????? ???而不是“приветмир”。如果commomMessage.BodyHtml.Text仅包含拉丁字符,则没有问题。

1 个答案:

答案 0 :(得分:2)

如果Message类继承自.NET的MailMessage类,请尝试使用它的BodyEncoding属性并将其设置为System.Text.Encoding.UTF8,例如:

commomMessage.BodyEncoding =  System.Text.Encoding.UTF8;

如果Message类未从MailMessage继承,请尝试查找为电子邮件设置适当编码的其他方法。我相信这是你可以通过使用UTF8编码解决的问题。