我需要通过电子邮件发送一个 vcal 文件。我想发送文件而不在磁盘上创建它。我有字符串格式的文件。
问问题
2769 次
3 回答
1
这就是我认为您在 C# 中寻找的内容
System.IO.StringReader stream = new System.IO.StringReader("xyz");
Attachment attach = new Attachment(stream);
MailMessage msg = new MailMessage();
msg.Attachments.Add(attach);
SmtpClient client = new SmtpClient();
client.Send(msg);
“xyz”应替换为附件的字符串。上面的代码将允许您向 MailMessage 对象添加附件,而无需从磁盘中检索该对象的数据,这就是我认为您的意思,而不是“内存”。
于 2009-04-07T06:10:43.943 回答
0
可能您能做的最好的事情(如果您使用的是图形电子邮件程序)就是将.vcal
文件保存到一个临时目录,然后将该路径传递给邮件程序。
您可以使用诸如mktemp
.
于 2009-04-07T05:18:17.517 回答
0
我不确定您所说的不“创建内存”是什么意思。操作系统通过将任何文件从磁盘读取到内存缓冲区来工作。因此,该文件很有可能在某个时候仍会驻留在内存中。此外,当您将文件传递给将要分派它的程序或工具时,它也会通过一些内存缓冲区。
于 2009-04-07T05:32:33.253 回答