web-dev-qa-db-ja.com

C#でメール添付ファイル名を設定する

次のような添付ファイルを追加します。

System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(AttachmentPath);   
msg.Attachments.Add(attachment);   

しかし、別の名前で添付したいのですが、実際のファイル名は非常に長く、紛らわしいので「file.txt」として添付したいと思います。ファイル?

43
Tom Gullen

どうですか:

System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(attachmentPath);
attachment.Name = "file.txt";  // set name here
msg.Attachments.Add(attachment);
72
Kev

ストリームから添付ファイルをロードする必要があり、それに名前とメディアタイプを付けることができます。

var fs = new FileStream("attachmentPath", FileMode.Open);
var attachment = new System.Net.Mail.Attachment(fs, "MyAttachmentName.txt", "text/text");
6
John Oxley