今天,邮件发送又出现乱码了.使用 GB2312发送的邮件又出现乱码了.经过调试,发现邮件内容在发送之前读取正常没有发生乱码的问题.但是发送完,收到邮件又是乱码的.经过反复仔细检查,终于发现GB2312邮件的模板文件的charset=UTF-8,将其改为charset=gb2312,乱码问题解决了. 总结一下使用C#发送中文邮件几点需要注意的: 1. 要发送的邮件模板设置charset=gb2312 2. 邮件模板要以encoding cp 936 保存(或是通过记事本保存成ANSI格式) 3. 代码中读取邮件模板是要以 Encoding .GetEncoding( GB2312 )方式读取