-4

私は立ち往生しています!!! 添付ファイルをドキュメントに保存する方法を知る必要があります。誰かがコードスニップまたは機能するものを提供してくれませんか.iv何日も探していました:(

OpenPop というサードパーティの dll を使用しています。電子メールの読み取りは、電子メールのリストを表示するための 1 つと、そこにあるコンテンツを表示するための 2 つの形式で機能します。

これはうまくいきます。

Pop3Client pop3Client = (Pop3Client)Session["Pop3Client"]; // Creating new PopClient int messageNumber = int.Parse(Request.QueryString["MessageNumber"]); Message message = pop3Client.GetMessage(messageNumber); MessagePart messagePart = message.MessagePart.MessageParts[1]; lblFrom.Text = message.Headers.From.Address; // Writeing message. lblSubject.Text = message.Headers.Subject; lblBody.Text = messagePart.BodyEncoding.GetString(messagePart.Body);

このコードの 2 番目の部分は添付ファイルの内容を表示しますが、これはテキスト ファイルの場合にのみ役立ちます。添付ファイルを保存できる必要があります。また、ここにあるコードの下部セクションはメッセージの本文を書き込むため、添付ファイルを受け取った場合、メッセージの本文を表示できません。

if (messagePart.IsAttachment == true) { foreach (MessagePart attachment in message.FindAllAttachments()) { if (attachment.FileName.Equals("blabla.pdf")) { // Save the raw bytes to a file File.WriteAllBytes(attachment.FileName, attachment.Body); //overwrites MessagePart.Body with attachment } } }

4

1 に答える 1

3

これを試して :)

変数'filePath'である添付ファイルのファイルパスを取得しますemailChangeRequestは電子メールの名前です

MailAttachment oAttch = new MailAttachment(filePath.ToString(), MailEncoding.Base64);
emailChangeRequest.Attachments.Add(oAttch);

お役に立てれば

于 2012-04-26T11:07:14.767 に答える