
Thunderbird é um aplicativo cliente de e-mail de código aberto que permite configurar vários servidores de e-mail e acessar suas mensagens de e-mail. Isso possibilita que você gerencie e-mails de várias contas em um único local. Em certos casos, pode ser necessário criar e acessar mensagens de e-mail no armazenamento do Thunderbird programaticamente. Assim, neste artigo, você aprenderá a escrever e ler mensagens no armazenamento Thunderbird em C# .NET.
- API .NET para gravar e ler mensagens no Thunderbird
- Escrever mensagens no armazenamento Thunderbird
- Ler mensagens do armazenamento do Thunderbird
API C# .NET para gravar e ler mensagens no armazenamento Thunderbird
Para escrever e ler mensagens de e-mail no armazenamento do Thunderbird, usaremos Aspose.Email for .NET. É uma API de processamento de e-mail que permite manipular e-mails e trabalhar com clientes de e-mail populares, como Thunderbird, Outlook, etc. Você pode baixar a DLL da API ou instalá-la de NuGet usando o seguinte comando .
PM> Install-Package Aspose.Email
Escreva uma mensagem no armazenamento Thunderbird em C# .NET
Você pode criar novas mensagens e armazená-las no armazenamento do Thunderbird em poucos passos usando o Aspose.Email para .NET. A seguir estão as etapas para executar esta operação em C#.
- Primeiro, carregue o arquivo MBOX em um objeto FileStream.
- Em seguida, crie uma instância de MboxrdStorageWriter e inicialize-a com o fluxo.
- Depois disso, crie uma nova MailMessage e defina suas propriedades.
- Gravar mensagem no armazenamento usando o método MboxrdStorageWriter.WriteMessage(MailMessage).
- Por fim, descarte o gravador e feche o fluxo.
O exemplo de código a seguir mostra como gravar uma mensagem no armazenamento Thunderbird em C# .NET.
// Abra o arquivo de armazenamento com FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Write);
// Inicialize o MboxStorageWriter e passe o fluxo para ele
MboxrdStorageWriter writer = new MboxrdStorageWriter(stream, false);
// Preparar uma nova mensagem usando a classe MailMessage
MailMessage message = new MailMessage("from@domain.com", "to@domain.com", Guid.NewGuid().ToString(), "added from Aspose.Email");
message.IsDraft = false;
// Adicionar esta mensagem ao armazenamento
writer.WriteMessage(message);
// Fechar todos os fluxos relacionados
writer.Dispose();
stream.Close();
Ler mensagens do armazenamento Thunderbird em C#
Para ler as mensagens do armazenamento do Thunderbird, precisamos carregar o arquivo de armazenamento usando a classe MboxrdStorageReader. A seguir estão as etapas para ler mensagens do Thunderbird em C#.
- Primeiro, carregue o arquivo MBOX em um objeto FileStream.
- Em seguida, crie uma instância de MboxrdStorageReader para ler o arquivo de armazenamento.
- Depois disso, leia a primeira mensagem usando o método MboxrdStorageReader.ReadNextMessage().
- Em seguida, inicie um loop para percorrer todas as mensagens.
- Leia cada mensagem e salve-a em disco, se necessário.
- Por fim, descarte o leitor no final.
O exemplo de código a seguir mostra como ler mensagens do armazenamento do Thunderbird em C#.
// Abra o arquivo de armazenamento com FileStream
FileStream stream = new FileStream("ExampleMbox.mbox", FileMode.Open, FileAccess.Read);
// Crie uma instância da classe MboxrdStorageReader e passe o fluxo
MboxrdStorageReader reader = new MboxrdStorageReader(stream, false);
// Comece a ler as mensagens
MailMessage message = reader.ReadNextMessage();
// Ler todas as mensagens em um loop
while (message != null)
{
// Manipular mensagem - mostrar conteúdo
Console.WriteLine("Subject: " + message.Subject);
// Salve esta mensagem no formato EML ou MSG
message.Save(message.Subject + ".eml", SaveOptions.DefaultEml);
message.Save(message.Subject + ".msg", SaveOptions.DefaultMsgUnicode);
// Receba a próxima mensagem
message = reader.ReadNextMessage();
}
// Feche os fluxos
reader.Dispose();
stream.Close();
Obtenha uma licença de API gratuita
Você pode usar o Aspose.Email para .NET sem limitações de avaliação usando uma licença temporária gratuita.
Conclusão
Usando o Thunderbird, você pode acessar mensagens de e-mail de várias contas em um único local. Neste artigo, você aprendeu como escrever mensagens no armazenamento Thunderbird em C# .NET. Além disso, você viu como ler mensagens do armazenamento do Thunderbird programaticamente. Além disso, você pode visitar a documentação para explorar outros recursos do Aspose.Email para .NET. Caso você tenha alguma dúvida, você pode postar em nosso fórum.