2009-04-07 7 views
-1

電子メールでvcalファイルを送信する必要があります。ディスク上にファイルを作成せずにファイルを送信したい。 ファイルは文字列形式です。ファイルをディスクに保存せずに電子メールで送信するにはどうすればよいですか?

+0

メモリに完全にロードせずに送信したい、またはあなたの制限は何ですか? – sharptooth

+0

私は文字列formtのファイルの内容を持っている、メモリにファイルを保存せずにメールで送信してから、メモリにメールを添付する必要があります –

+0

ディスクに保存しないのはどういう意味ですか? – sharptooth

答えて

0

おそらくあなたができるのは、.vcalファイルをテンポラリディレクトリに保存してから、そのパスをメールプログラムに渡すだけです(グラフィカルメールプログラムを使用している場合)。

mktempのような関数で一時ファイル名を生成できます。

0

「メモリを作成していない」とはどういう意味ですか。オペレーティングシステムは、ディスクからインメモリバッファにファイルを読み込むことによって動作します。だから、ファイルがまだある時点でメモリに常駐する可能性があります。さらに、ファイルをディスパッチするプログラムまたはツールに渡すと、メモリバッファもまた通過します。ここで

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オブジェクトに添付ファイルを追加することを可能にします。ディスクからそのオブジェクトのデータを取得する必要はありません。

関連する問題