smtp发送带附件的邮件代码分享

   2015-06-26 0
核心提示:本文给大家分享一段smtp发送带附件邮件的代码,代码非常简洁易懂,有需要的小伙伴可以参考下。

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

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();

另附上一个.net使用smtp发送带附件邮件的实例

**********@gmail.com"/>//Email Address
<add key="EmailPassword" value="*********"/> //Emial PWD
<add key="SmtpServer" value="smtp.gmail.com"/>
<add key="SmtpPort" value="587"/>
<--带附件版本->
var fromAddress = "allenyinj@gmail.com";
string fromPassword = "yj1989120";
const string subject = "CV";
var smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true,
DeliveryMethod = SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new NetworkCredential(fromAddress, fromPassword)
};
MailMessage email=new MailMessage(fromAddress, "allen.yin.jun@gmail.com");
email.Subject = "INLINE attachment TEST";
email.IsBodyHtml = true;
string attachmentPath = "C:\\3.jpeg";
Attachment inline = new Attachment(attachmentPath);
inline.ContentDisposition.Inline = true;
inline.ContentDisposition.DispositionType = DispositionTypeNames.Inline;
//inline.ContentId = "1";
//inline.ContentType.MediaType = "image/png";
inline.ContentType.Name = Path.GetFileName(attachmentPath);
email.Attachments.Add(inline);
email.Body = "test";
smtp.Send(email);
email.Dispose();
//如果没有路径,用Stream
Attachment letter = new Attachment(FileUploadLetter.FileContent, FileUploadLetter.PostedFile.ContentType);
letter.ContentDisposition.Inline = true;
letter.ContentDisposition.DispositionType = DispositionTypeNames.Inline;
//inline.ContentId = "1";
letter.ContentType.MediaType = FileUploadLetter.PostedFile.ContentType;
letter.ContentType.Name = Path.GetFileName(FileUploadLetter.PostedFile.FileName);
letter.Name = Path.GetFileName(FileUploadLetter.PostedFile.FileName);

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

点击排行