首页 > 后端开发 > C++ > 如何在 C# 中将 MemoryStream 中的文件附加到 MailMessage?

如何在 C# 中将 MemoryStream 中的文件附加到 MailMessage?

DDD
发布: 2025-01-02 15:18:38
原创
443 人浏览过

How to Attach a File from a MemoryStream to a MailMessage in C#?

在 C# 中将 MemoryStream 中的文件附加到 MailMessage

在本文中,我们将解决从 MemoryStream 附加文件的问题MemoryStream 到 MailMessage 中C#。

问题:

阅读器当前使用 FileStream 将文件存储在磁盘上,然后使用 System.Net.Mail.MailMessage.Attachments.Add 将它们添加为附件。然而,他们希望避免将文件存储在磁盘上,而是使用 MemoryStream。

解决方案:

要实现这一点,我们可以利用以下方法:

System.IO.MemoryStream ms = new System.IO.MemoryStream();
System.IO.StreamWriter writer = new System.IO.StreamWriter(ms);
writer.Write("Hello its my sample file");
writer.Flush();
writer.Dispose();
ms.Position = 0;

System.Net.Mime.ContentType ct = new System.Net.Mime.ContentType(System.Net.Mime.MediaTypeNames.Text.Plain);
System.Net.Mail.Attachment attach = new System.Net.Mail.Attachment(ms, ct);
attach.ContentDisposition.FileName = "myFile.txt";

// I guess you know how to send email with an attachment
// after sending email
ms.Close();
登录后复制

额外注意:

  • 创建 ContentType 时指定 MimeType 非常重要。
  • 您应该根据 MimeType 在 FileName 中指定正确的扩展名,例如“myFile.txt”。 pdf”用于 PDF。

以上是如何在 C# 中将 MemoryStream 中的文件附加到 MailMessage?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板