C#使用smtp发送带附件的邮件实现方法

本文实例讲述了C#使用smtp发送带附件的邮件实现方法。可直接将string类型结果保存为附件。分享给大家供大家参考。具体分析如下:

该方式直接保存为HTML文件,也可以是文本文件,其它格式效果不是很好

MailMessage mmsg = new MailMessage();

mmsg.Subject = "邮件标题";

mmsg.Body = "邮件内容";

mmsg.To.Add("accept@qq.com");//接收邮箱

byte[] bytes = System.Text.Encoding.Default.GetBytes

(@"<table><tr><td width=150>1234567891234567

</td><td width=80>12345678</td></tr></table>");

MemoryStream ms = new MemoryStream(bytes);

ContentType ct = new ContentType();

//附件文件类型

ct.MediaType = MediaTypeNames.Text.Html;

//附件名称,可以是其它后缀名

ct.Name = "附件名称" + DateTime.Now.ToString() + ".html";

mmsg.Attachments.Add(new Attachment(ms, ct));

//SMTP简单邮件协议

System.Net.Mail.SmtpClient sc = new System.Net.Mail.SmtpClient();

sc.Host = "127.0.0.1";//主机地址

sc.Port = 25;//端口

//发送邮箱账号和密码

sc.Credentials = new System.Net.NetworkCredential("account", "password");

//发送邮箱

mmsg.From = new MailAddress("account@qq.com");

sc.Send(mmsg);

//释放流资源

ms.Close();

ms.Dispose();

希望本文所述对大家的C#程序设计有所帮助。