C# MailKit-如何获取每个附件的大小
我想将附件信息格式化为带有文件名和文件大小的字符串 我可以在C# MailKit-如何获取每个附件的大小,c#,mailkit,mime-message,C#,Mailkit,Mime Message,我想将附件信息格式化为带有文件名和文件大小的字符串 我可以在附件中获取文件名。内容配置,但大小为空。还有别的办法吗 例如:string.Join(“,”+Environment.NewLine,mailData[i].Attachments.ToList()。选择(y=>y.ContentDisposition.FileName+”(“+y.ContentDisposition.Size.ToString()+”)。ToList()) 我想要的示例输出: xxx.jpg(123字节), xxx.
附件中获取文件名。内容配置
,但大小为空
。还有别的办法吗
例如:string.Join(“,”+Environment.NewLine,mailData[i].Attachments.ToList()。选择(y=>y.ContentDisposition.FileName+”(“+y.ContentDisposition.Size.ToString()+”)。ToList())
我想要的示例输出:
xxx.jpg(123字节),
xxx.png(456字节),
xxx.pdf(123456字节),
没有任何属性可以获取大小(ContentDisposition上的size
属性依赖于发送客户端来设置,即使设置可能不准确)
因此,要获得附件的大小,您需要执行以下操作:
static long MeasureAttachmentSize (MimePart part)
{
using (var measure = new MimeKit.IO.MeasuringStream ()) {
part.Content.DecodeTo (measure);
return measure.Length;
}
}
你好这会下载附件吗?上面的代码段假定您已经下载了附件。