
Microsoft Outlook und andere beliebte E-Mail-Clients verwenden EML(MIME RFC 822-Standard) als Standardformat. EML ist die Abkürzung für Electronic Mail oder E-Mail. Ebenso ist es eine Dateierweiterung für eine E-Mail-Nachricht, die in einer Datei im Internet Message Format-Protokoll für E-Mail-Nachrichten gespeichert ist. Die EML Dateien enthalten normalerweise einfachen ASCII-Text für den Hauptnachrichtentext, Kopfzeilen und Hyperlinks sowie Anhänge. Es gibt jedoch eine mit dem EML-Format verbundene Gefahr: Es kann sich um eine Phishing-E-Mail handeln und der Anhang könnte entweder: Ihren Computer mit Malware infizieren, wenn Sie den Anhang öffnen.
Wenn wir eine Offline-Kopie dieser Dateien speichern, kann diese außerdem leicht von Malware befallen werden und Daten können verloren gehen. Um EML Dateien öffnen zu können, benötigen wir außerdem eine unterstützte Anwendung (Microsoft Outlook 365, Microsoft Windows Mail, Mozilla Thunderbird usw.).Eine vorbeugende Maßnahme kann daher die Konvertierung in das MHT-Format sein.
Kostenlose API zur E-Mail-Verarbeitung
Aspose.Email Cloud ist unsere preisgekrönte API, die die Möglichkeit bietet, gängige E-Mail-Formate zu erstellen, zu bearbeiten und in andere unterstützte Formate umzuwandeln. Erstellen Sie also Ihre eigene Cloud-basierte E-Mail-Verwaltungslösung, die OAuth unterstützt, und senden Sie einfache oder MIME-E-Mail-Nachrichten mit oder ohne Anhänge. Greifen Sie auf die API auf jeder Plattform zu, einschließlich Windows, Linux, macOS, und in jedem Anwendungstyp, d. h. Desktop, Mobil, Web, Hybrid usw.
Um die API direkt in einer Programmiersprache zu verwenden, versuchen Sie es bitte mit unserem sprachspezifischen Cloud SDK, das ein Wrapper um das Cloud SDK ist. In diesem Artikel konzentrieren wir uns auf die Konvertierung von EML Dateien in das MHT-Format mit Aspose.Email Cloud SDK für .NET. Um das SDK verwenden zu können, benötigen Sie eines der unterstützten (oder mit unterstützten).NET-Frameworks:
- .NETFramework 2.0
- .NETFramework 4.5.2
- .NETStandard 2.0
- MonoAndroid 6.0
- Xamarin.iOS 1.0
- Xamarin.Mac 2.0
Installation
Um das Cloud SDK nutzen zu können, muss es zunächst installiert werden. Es steht bei NuGet und GitHub zum Download bereit. Um die Installation für NuGet durchzuführen, führen Sie bitte folgenden Befehl im Terminalfenster aus:
nuget install Aspose.Email-Cloud
Bei Verwendung der .NET-CLI:
dotnet add package Aspose.Email-Cloud
Wenn Sie Visual Studio verwenden, kann das Paket auch über die Paket-Manager-Konsole installiert werden. Führen Sie dazu den folgenden Befehl aus:
PM> Install-Package Aspose.Email-Cloud

Image 1:- Aspose.Words NuGet package installed.
NuGet-Paket-Manager – Visual Studio
Ein anderer, einfacherer Ansatz besteht darin, das SDK über den NuGet Package Manager in der Visual Studio IDE zu installieren.
- Öffnen Sie den Projektmappen-Explorer.
- Erweitern Sie das Projekt und klicken Sie mit der rechten Maustaste auf den Ordner „Pakete“ in Ihrer Lösung.
- Wählen Sie die Option „NuGet-Pakete verwalten…“
- Klicken Sie auf die Registerkarte Durchsuchen und suchen Sie nach „Aspose.Email-Cloud“.
- Klicken Sie auf das Aspose.Email-Cloud-Paket, wählen Sie die entsprechende Version auf der rechten Registerkarte aus und klicken Sie auf die Schaltfläche Paket hinzufügen

Image 2:- Aspose.Words Package in NuGet Package Manager.
Cloud-Kontoabonnement
Unsere APIs sind nur für autorisierte Personen zugänglich, da die im Cloud-Speicher gespeicherten Daten über Cloud-APIs zugänglich sind. Das Abonnement ist kostenlos und es sind keine Vorauszahlungsdetails erforderlich. Führen Sie bis zu 150 kostenlose Dokumentverarbeitungsvorgänge durch. Wenn Sie mit den Funktionen der API zufrieden sind, können Sie sich für ein Lizenzabonnement entscheiden, das nur 0,005 USD pro API-Aufruf kosten kann. Weitere Einzelheiten finden Sie unter Preise.
Fahren Sie nun mit der Kontoerstellung fort, indem Sie das Aspose.Cloud-Dashboard besuchen. Es sind keine Kreditkarten oder anderen Zahlungsdaten erforderlich. Wenn Sie ein GitHub oder Google-Konto haben, melden Sie sich einfach an oder klicken Sie auf die Schaltfläche Neues Konto erstellen und geben Sie die erforderlichen Informationen ein. Melden Sie sich nun mit Ihren Anmeldeinformationen beim Dashboard an, erweitern Sie den Abschnitt „Anwendungen“ im Dashboard und scrollen Sie nach unten zum Abschnitt „Client-Anmeldeinformationen“, um die Details zu Client-ID und Client-Geheimnis anzuzeigen.

Bild 3: – Client-Anmeldeinformationen im Aspose.Cloud-Dashboard.
EML zu MHT in C#
Befolgen Sie die unten angegebenen Schritte, um die EML-Datei mit C# .NET in das MHT-Format zu konvertieren.
- Der erste Schritt besteht darin, ein Objekt der Klasse EmailCloud zu erstellen, indem ClientID und Client Secret-Details als Argumente übergeben werden
- Zweitens: Lesen Sie die Quell-E-Mail-Datei in die File.OpenRead-Instanz
- Drittens erstellen Sie eine Instanz von EmailConvertRequest, während Sie das Eingabedateiformat, das resultierende Dateiformat und das Stream Objekt mit der EML-Eingabedatei übergeben
- Rufen Sie nun die Methode Email.Convert(…) auf, um den Konvertierungsvorgang zu starten
- Rufen Sie abschließend die benutzerdefinierte Methode auf, um die resultierende Datei mithilfe der File.Create-Instanz auf dem lokalen Laufwerk zu speichern.
// Vollständige Beispiele und Datendateien finden Sie unter
https://github.com/aspose-email-cloud/aspose-email-cloud-dotnet
// Holen Sie sich die Client-Anmeldeinformationen von https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";
// Erstellen Sie eine Instanz der EmailCloud API
var emailApi = new EmailCloud(clientSecret, clientID);
// Name der EML-Quelldatei
string name = "sample.eml";
// Name der resultierenden MHT-Datei
string resultantFile = "converted.mht";
// Format der Eingabe-E-Mail-Datei
string fromFormat = "eml";
// Format der resultierenden Datei
string toFormat = "Mhtml";
try
{
// Lesen Sie die Sourcec-EML, um das Objekt zu streamen
using (var file = System.IO.File.OpenRead(@"C:\Users\shahbnay\Downloads\" + name))
{
// Erstellen Sie eine EmailConvert-Anforderungsinstanz mit Eingabe und Ausgabeformaten sowie Dateistrom
var convertRequest = new EmailConvertRequest(fromFormat, toFormat, file);
// Führen Sie den Konvertierungsvorgang durch
var response = emailApi.Email.Convert(convertRequest);
// Drucke eine Erfolgsmeldung, wenn die Konvertierung erfolgreich war
if (response != null && response.Equals("OK"))
{
// Drucken Sie die Erfolgsmeldung
Console.WriteLine("Successfully converted EML to MHT !");
Console.ReadKey();
}
// Speichern Sie den resultierenden Dateistream auf dem lokalen Laufwerk
saveToDisk(response, @"C:\Users\shahbnay\Downloads\" + resultantFile);
}
}catch (Exception ex)
{
// Drucken Sie die Ausnahme in der Konsole
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
// Benutzerdefinierte Methode zum Speichern der Ausgabe auf dem Systemlaufwerk
static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}

Bild 4: – Vorschau der Konvertierung von EML zu MHT.
Die im obigen Beispiel verwendeten Dateien können von sample.eml und converted.mht heruntergeladen werden.
Konvertieren von EML in MHT mit cURL
Da Aspose.Email Cloud gemäß der REST-Architektur entwickelt wurde, kann es problemlos über cURL-Befehle aufgerufen werden. Verwenden Sie die Terminalanwendung/Eingabeaufforderung, um auf die APIs zuzugreifen. Der erste Schritt besteht also darin, ein JWT-Zugriffstoken basierend auf den über das Aspose.Cloud-Dashboard angegebenen Clientanmeldeinformationen zu generieren. Führen Sie den folgenden Befehl aus, um das JWT-Token zu generieren.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4db2f826-bf9c-42e7-8b2a-8cbca2d15553&client_secret=d757548a9f2558c39c2feebdf85b4c44" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Jetzt besprechen wir die Schritte zur Verwendung des cURL-Befehls zum Konvertieren von bereits im Cloud-Speicher verfügbaren .eml Dateien in das MHTML-Format. Die Ausgabe wird mit dem Parameter -o auf dem System gespeichert.
curl -X GET "https://api.aspose.cloud/v4.0/email/as-file?fileName=sample.eml&format=Mhtml" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>" \
-o resultant.mht
Falls Sie die Konvertierung der hochzuladenden EML-Datei vom lokalen Laufwerk durchführen müssen, versuchen Sie es mit dem folgenden cURL-Befehl:
curl -X PUT "https://api.aspose.cloud/v4.0/email/convert?fromFormat=Eml&toFormat=Mhtml" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: multipart/form-data" \
-d @sample.eml \
-o converted.mht
Abschluss
In diesem Artikel haben wir die Funktionen von Aspose.Email Cloud für die Verarbeitung gängiger E-Mail-Formate hervorgehoben. Die API ermöglicht es Ihnen, E-Mail-Bearbeitungsanwendungen zu erstellen, um E-Mail-Nachrichten mit Warnhinweisen zu versehen, E-Mail-Anhänge hinzuzufügen sowie E-Mail-Anhänge herunterzuladen und vieles mehr. Wir haben die Schritte zur Durchführung der Konvertierung von EML Dateien in MHT mit C# .NET und den cURL-Befehlen erläutert. Darüber hinaus wurde das .NET Cloud SDK gemäß der MIT-Lizenz entwickelt. Laden Sie es herunter und passen Sie es absolut kostenlos an. Der vollständige Quellcode ist über GitHub verfügbar.
Wir haben auch eine Swagger-Ansicht der Cloud-APIs bereitgestellt, damit Sie die APIs in einem Webbrowser testen können. Wenn Sie auf Probleme stoßen oder weitere Fragen haben, können Sie uns gerne über das kostenlose Kundensupportforum kontaktieren.
Verwandte Artikel
Wir empfehlen Ihnen außerdem, die folgenden Links zu besuchen, um mehr zu erfahren über: