【发布时间】:2012-06-15 10:21:22
【问题描述】:
我正在尝试在 c# 中通过 SMTP 发送邮件。
示例邮件内容[法语]:
<html xmlns='http://www.w3.org/1999/xhtml'><head> <meta http-equiv='Content-Type' content='text/html; charset=UTF-8' /><body>
Votre compte à été activé
</body></html>
已收到邮件:Votre compte à été activé
谁能帮助我为什么邮件内容显示版权标志而不是法语字符。
【问题讨论】:
-
您需要将
BodyEncoding设置为Encoding.UTF8。 -
并确保原始文本实际上是 UTF8。如果原始文本来自以 ASCII 编码保存的文件(例如 aspx 文件、cs 文件),结果仍然是错误的。
-
@PanagiotisKanavos:我假设原始内容是一个字符串。此外,他的问题文本看起来像 UTF8-as-ASCII
-
原始内容存储在一个字符串变量中。我直接将它传递给MailMessage正文。
标签: c# encoding smtp html-email