在 C# 中使用 MimeKit 获取字节数组中的附件
Get attachments in an array of bytes using MimeKit in C#
使用MimeKit如何获取附件内容?这是我的:
var mimeMessage = MimeMessage.Load(@"test.eml");
var attachments = mimeMessage.Attachments.ToList();
foreach (var attachment in attachments)
{
// how do I get the content here (array of bytes or stream)
}
这应该可以满足您的需求:
var mimeMessage = MimeMessage.Load(@"test.eml");
var attachments = mimeMessage.Attachments.ToList();
foreach (var attachment in attachments)
{
using (var memory = new MemoryStream ())
{
if (attachment is MimePart)
((MimePart) attachment).Content.DecodeTo (memory);
else
((MessagePart) attachment).Message.WriteTo (memory);
var bytes = memory.ToArray ();
}
}
使用MimeKit如何获取附件内容?这是我的:
var mimeMessage = MimeMessage.Load(@"test.eml");
var attachments = mimeMessage.Attachments.ToList();
foreach (var attachment in attachments)
{
// how do I get the content here (array of bytes or stream)
}
这应该可以满足您的需求:
var mimeMessage = MimeMessage.Load(@"test.eml");
var attachments = mimeMessage.Attachments.ToList();
foreach (var attachment in attachments)
{
using (var memory = new MemoryStream ())
{
if (attachment is MimePart)
((MimePart) attachment).Content.DecodeTo (memory);
else
((MessagePart) attachment).Message.WriteTo (memory);
var bytes = memory.ToArray ();
}
}