Převod e-mailu na HTML v C# .NET

HTML je široce používaný a snadno přístupný formát, který lze zobrazit na široké škále platforem, webových prohlížečích, včetně stolních počítačů a mobilních zařízení. Naopak soubory EML a MSG mohou vyžadovat specifický software nebo e-mailové klienty pro zobrazení, což může ztížit jejich přístupnost a zobrazení v průběhu času. Proto převod souborů MSG nebo EML na HTML usnadňuje jejich prohlížení, zejména pro příjemce, kteří nemusí mít kompatibilní e-mailové klienty nebo software.

Kromě toho jsou HTML soubory snazší pro archivaci a zůstávají ve vyhledávatelném, indexovaném formátu.

Tento článek představuje algoritmus pro rychlý a snadný převod souborů MSG nebo EML na HTML formát pomocí C#, bez ohledu na základní účel. Naše spolehlivá metoda zaručuje, že obsah e-mailu, včetně vložených obrázků, je plně zachován bez jakýchkoliv ztrát. To zajišťuje, že integrita e-mailu je zachována po celou dobu převodu.

Článek pokrývá následující témata:

C# API pro převod souborů EML/MSG na HTML

Pro převod souborů EML/MSG na HTML budeme používat Aspose.Email for .NET. Je to API pro zpracování e-mailů, které vám umožňuje manipulovat s e-maily a pracovat se souborovými formáty populárních e-mailových klientů, jako jsou Thunderbird, Outlook atd. Můžete si stáhnout DLL API nebo jej nainstalovat z NuGet pomocí následujícího příkazu:

PM> Install-Package Aspose.Email

Převod souborů EML/MSG na HTML s ukládáním obrázků odděleně

Typický soubor MSG má následující vzhled:

Pohled na soubor MSG

S naším API můžete nastavit libovolný adresář na vašem zařízení a uložit cílový HTML soubor s obrázky do samostatné složky:

Pohled na HTML soubor

Použijte následující příklad kódu k převodu e-mailové zprávy ve formátu MSG nebo EML na HTML soubor s obrázky, které jsou uloženy do cílového adresáře. Kód provádí následující kroky:

  1. Nejprve specifikuje zdrojové a cílové cesty pro zdrojový soubor MSG/EML a HTML soubor, stejně jako cílový adresář pro zdroje.
  2. Načte soubor MSG nebo EML pomocí metody MailMessage.Load.
  3. Vytvoří objekt HtmlSaveOptions a nastaví vlastnost ResourceRenderingMode na SaveToFile.
  4. Definuje delegáta pro událost SaveResourceHandler objektu HtmlSaveOptions.
  5. Vytvoří cílový adresář pro zdroje uvnitř delegáta, pokud již neexistuje.
  6. Uloží každý zdroj do souboru s názvem souboru uvnitř delegáta na základě typu obsahu zdroje.
  7. Zavolá metodu Save instance MailMessage, přičemž předá název cílového HTML souboru a instanci HtmlSaveOptions pro uložení e-mailu ve formátu HTML.

Převod souborů EML/MSG na HTML s ukládáním obrázků uvnitř HTML

Někdy můžete preferovat převod souborů EML/MSG na HTML s vloženými obrázky uvnitř HTML.

Obrázek uvnitř HTML v textovém editoru

Následující úryvek kódu demonstruje, jak převést soubor MSG nebo EML na HTML formát v C# a uložit obrázky uvnitř HTML. Kód provádí následující kroky:

  1. Definuje zdrojové a cílové cesty pro e-mailový soubor a HTML výstup.
  2. Načte soubor MSG nebo EML pomocí metody MailMessage.Load.
  3. Vytvoří novou instanci třídy HtmlSaveOptions, která vám umožňuje konfigurovat, jak je e-mail uložen jako HTML.
  4. Konfiguruje instanci HtmlSaveOptions, aby vkládala zdroje, včetně obrázků, přímo do HTML.
  5. Zavolá metodu Save instance MailMessage, přičemž předá název cílového HTML souboru a instanci HtmlSaveOptions pro uložení e-mailu ve formátu HTML.

Uložení HTML s hlavičkou

Jako volitelnou variantu můžete uložit HTML s hlavičkou. Následující úryvek kódu demonstruje, jak uložit HTML s hlavičkou v C#:

V důsledku toho bude k cílovému HTML přidána textová hlavička:

Textová hlavička

Závěr

Na závěr, z tohoto článku jste se právě dozvěděli o pohodlí formátu HTML pro archivaci a správu vašich souborů a jak provést převod z EML nebo MSG v C# pomocí knihovny Aspose.Email for .NET. Můžete vidět, jak rychlý a jednoduchý je proces převodu s jen několika řádky kódu. Pokud máte jakékoliv dotazy, neváhejte napsat na naše bezplatné podpůrné fórum. Můžete se také dozvědět více o Aspose.Email for .NET, jeho funkcích a možnostech v naší dokumentaci.

Viz také