gpt4 book ai didi

c# - 如何使用 OpenPop 保存电子邮件附件

转载 作者:太空狗 更新时间:2023-10-29 17:35:07 25 4
gpt4 key购买 nike

我已经创建了一个网络电子邮件应用程序,如何查看保存附件?

我正在使用第三方 dll OpenPop,我可以发送带附件的电子邮件和阅读没有附件的电子邮件。

这很好用:

Pop3Client pop3Client = (Pop3Client)Session["Pop3Client"]; // Creating newPopClient 
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);

第二部分代码显示附件的内容,但只有在它是文本文件时才有用。我需要能够保存附件。此外,我在此处的代码底部覆盖了我的消息正文,因此如果我收到附件,我将无法查看我的消息正文。

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
}
}
}

最佳答案

如果有人仍在寻找答案,这对我来说很好。

var client = new Pop3Client();
try
{
client.Connect("MailServerName", Port_Number, UseSSL); //UseSSL true or false
client.Authenticate("UserID", "password");

var messageCount = client.GetMessageCount();
var Messages = new List<Message>(messageCount);

for (int i = 0;i < messageCount; i++)
{
Message getMessage = client.GetMessage(i + 1);
Messages.Add(getMessage);
}

foreach (Message msg in Messages)
{
foreach (var attachment in msg.FindAllAttachments())
{
string filePath = Path.Combine(@"C:\Attachment", attachment.FileName);
if(attachment.FileName.Equals("blabla.pdf"))
{
FileStream Stream = new FileStream(filePath, FileMode.Create);
BinaryWriter BinaryStream = new BinaryWriter(Stream);
BinaryStream.Write(attachment.Body);
BinaryStream.Close();
}
}
}
}
catch (Exception ex)
{
Console.WriteLine("", ex.Message);
}
finally
{
if (client.Connected)
client.Dispose();
}

关于c# - 如何使用 OpenPop 保存电子邮件附件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10317411/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com