C# kullanarak E-postalardaki Ekleri Kaydetme

Bir C# geliştiricisi olarak, e-posta iletilerindeki ekleri program aracılığıyla kolayca çıkarabilir ve kaydedebilirsiniz. Bu makalede, C# kullanarak e-postalardaki ekleri nasıl kaydedeceğinizi öğreneceksiniz.

Bu makalede aşağıdaki konular tartışılmaktadır/kapsanmaktadır:

E-posta Eklerini Kaydetmek için C# API’si

MSG dosyalarındaki ekleri kaydetmek için GroupDocs.Viewer for .NET API kullanacağız. Yaygın olarak kullanılan dosya formatlarını herhangi bir harici yazılım yüklemeden işlemek ve görüntülemek için güçlü bir belge görüntüleyici API’sidir. Ayrıca popüler desteklenen dosya formatlarını ve Word, Excel, PowerPoint, Outlook e-postaları, [Proje]‘yi hızlı bir şekilde görüntülemenizi sağlar. 12], PDF, HTML ve XML.

API’nin DLL’sini indirebilir veya NuGet kullanarak yükleyebilirsiniz.

Install-Package GroupDocs.Viewer

C# kullanarak E-postalardan Ekleri Çıkarma ve Kaydetme

Aşağıda verilen adımları izleyerek e-posta MSG dosyalarından ekleri programlı olarak çıkarabilir ve kaydedebilirsiniz:

  • Öncelikle Viewer sınıfını kullanarak MSG dosyasını yükleyin.
  • Daha sonra, yüklenen MSG dosyasının tüm eklerini almak için Viewer.GetAttachments() yöntemini çağırın. Sonuçları bir ek koleksiyonu olarak alın.
  • Koleksiyondaki her ek için, Viewer.SaveAttachment() yöntemini çağırarak eki kaydedin. Kaydetmek için ek nesnesini ve dosya yolunu iletin.

Aşağıdaki kod örneği, C# kullanılarak e-posta MSG dosyasının içerdiği eklerin nasıl ayıklanıp kaydedileceğini gösterir.

string outputPath = @"C:\Files\Viewer\";

// API'yi başlatın ve MSG dosyasını yükleyin
Viewer viewer = new Viewer(@"C:\Files\Viewer\with_attachments.msg");

// Ekleri al
IList<Attachment> attachments = viewer.GetAttachments();

foreach (Attachment attachment in attachments)
{
    // Eki kaydet
    string filePath = Path.Combine(outputPath, attachment.FileName);
    viewer.SaveAttachment(attachment, File.OpenWrite(filePath));
}
C# kullanarak E-postalardan Ekleri Çıkarma ve Kaydetme

C# kullanarak e-postalardaki ekleri çıkarın ve kaydedin.

C# kullanarak E-postalardaki Ekleri PDF olarak kaydetme

Aşağıdaki adımları izleyerek e-posta mesajı eklerini programlı olarak PDF olarak kaydedebilirsiniz:

  • Ekli dosya adı ve dosya yolu ile Attachment sınıfının bir örneğini oluşturun.
  • MemoryStream sınıfının bir örneğini başlatın.
  • MSG dosyasını Viewer sınıfını kullanarak yükleyin.
  • Ardından, Viewer.SaveAttachment() yöntemini çağırın ve Ek ile MemoryStream nesnesini giriş parametreleri olarak iletin. Belirtilen eki çıkartacak ve bellek akışına kaydedecektir.
  • Şimdi MemoryStream nesnesini Viewer sınıfını kullanarak yükleyin.
  • Ardından, çıktı PDF dosya yolu ile PdfViewOptions sınıfının bir örneğini oluşturun.
  • Son olarak, eki PDF olarak kaydedip görüntülemek için Viewer.View() yöntemini çağırın.

Aşağıdaki kod örneği, C# kullanarak bir e-posta MSG dosyasındaki ekin PDF olarak nasıl kaydedileceğini ve görüntüleneceğini gösterir.

// Eki başlat
Attachment attachment = new Attachment("attachment-word.doc", "attachment-word.doc");
MemoryStream attachmentStream = new MemoryStream();

// API'yi başlatın ve MSG dosyasını yükleyin
using (Viewer viewer = new Viewer(@"C:\Files\Viewer\with_attachments.msg"))
{
    // Eki akışa kaydet
    viewer.SaveAttachment(attachment, attachmentStream);
}

// API'yi başlatın ve ek akışını yükleyin
using (Viewer viewer = new Viewer(attachmentStream))
{
    // PDF görüntüleme seçeneklerini tanımlayın
    PdfViewOptions viewOptions = new PdfViewOptions("C:\\Files\\Viewer\\output.pdf");

    // PDF olarak görüntüle
    viewer.View(viewOptions);
}

Ücretsiz Lisans Alın

Ücretsiz bir geçici lisans talep ederek API’yi değerlendirme sınırlamaları olmadan deneyebilirsiniz.

Çözüm

Bu makalede, e-posta MSG dosyasının içerdiği ekleri C# kullanarak nasıl çıkaracağınızı ve kaydedeceğinizi öğrendiniz. Ayrıca, belirli bir eki program aracılığıyla PDF olarak nasıl kaydedeceğinizi gördünüz. Ayrıca, belgeleri kullanarak GroupDocs.Viewer for .NET API hakkında daha fazla bilgi edinebilirsiniz. Herhangi bir belirsizlik durumunda lütfen forum üzerinden bizimle iletişime geçmekten çekinmeyin.

Ayrıca bakınız