MHTML-Dateien in verschiedene Formate konvertieren in C#
Die Konvertierung von MHTML-Dateien in verschiedene Formate ist in vielen Anwendungen ein gängiges Bedürfnis, insbesondere in solchen, die sich mit E‑Mail‑Archivierung, Dokumentenverwaltung und Datenaustausch befassen. MHTML, also MIME HTML, ist ein Web‑Archivformat, das HTML‑Code und zugehörige Ressourcen wie Bilder in einer einzigen Datei kombiniert. Für Kompatibilitäts‑ und Gebrauchszwecke kann es jedoch erforderlich sein, MHTML-Dateien in andere Formate wie MSG, EML oder OST zu konvertieren. In diesem Artikel zeigen wir, wie dies mit Aspose.Email für .NET, einer robusten und vielseitigen Bibliothek für die E‑Mail‑Verarbeitung und -Verwaltung in .NET‑Anwendungen, umgesetzt werden kann.
Aspose.Email für .NET vereinfacht den Konvertierungsprozess durch sein umfangreiches Set an Funktionen und Methoden. Die wichtigsten Komponenten des MHTML-Konvertierungsprozesses umfassen:
- MhtmlLoadOptions: Diese Komponente gibt die Optionen zum Laden von MHTML-Dateien an. Sie ermöglicht die Anpassung, wie der MHTML‑Inhalt interpretiert und verarbeitet wird.
- MailMessage: Diese Klasse stellt eine E‑Mail‑Nachricht dar und dient als Brücke zum Laden von MHTML-Inhalten. Sie erleichtert das Extrahieren und Manipulieren der E‑Mail‑Daten innerhalb der MHTML‑Datei.
- Speicheroptionen: Je nach Zielformat bietet Aspose.Email für .NET verschiedene Speicheroptionen wie EmlSaveOptions, MsgSaveOptions usw. Diese Optionen bestimmen die Parameter und Einstellungen zum Speichern der konvertierten Datei im gewünschten Format.
Methoden zur Dateiformatkonvertierung werden ebenfalls verwendet, um den Konvertierungsprozess zu optimieren und eine nahtlose Umwandlung von MHTML in Formate wie EML, MSG, PST und andere zu ermöglichen.
MHTML zu EML konvertieren
Die Konvertierung von MHTML zu EML ist eine der häufigen Aufgaben beim Umgang mit E‑Mail‑Dateien. Das EML-Format wird häufig zum Speichern einzelner E‑Mail‑Nachrichten verwendet und eignet sich somit gut für die Archivierung und den Austausch von E‑Mails. Das nachstehende Code‑Snippet zeigt, wie Aspose.Email zum Konvertieren einer MHTML-Datei in das EML-Format verwendet werden kann:
- Laden Sie die MHTML-Datei mit der MailMessage.Load Methode. Diese Methode liest den Inhalt der MHTML-Datei und bereitet ihn für die weitere Verarbeitung vor.
- Speichern Sie die geladene Nachricht als EML-Datei mit der Speichern Methode des MailMessage Klasse. Geben Sie den Ausgabedateinamen und die Speicheroptionen an.
// Initialize and Load an existing MHTML file by specifying the MessageFormat
var message = MailMessage.Load("myMessage.mhtml");
message.Save("output.eml", SaveOptions.DefaultEml);
MHTML zu EMLX konvertieren
Das EMLX-Format wird häufig von Apples Mail-Anwendung verwendet und ist für Benutzer von Vorteil, die Kompatibilität mit macOS-Systemen sicherstellen müssen. Aspose.Email für .NET bietet die Möglichkeit, MHTML-Dateien in das EMLX-Format zu konvertieren. Das folgende Codebeispiel demonstriert dessen Funktionsweise und gewährleistet die Kompatibilität mit Apples Mail-Anwendung sowie anderen macOS‑basierten E‑Mail‑Clients.
- Laden Sie die MHTML-Datei mit der MailMessage.Load Methode.
- Verwenden Sie die Speichern Methode des MailMessage Klasse, um den MHTML-Inhalt als EMLX-Datei zu speichern. Geben Sie den Ausgabedateinamen und die Speicheroptionen an.
// load the MHTML file to be converted
var message = MailMessage.Load("My File.mhtml");
// save MHTML as a EMLX
message.Save("Saved File.emlx", SaveOptions.CreateSaveOptions(MailMessageSaveType.EmlxFormat));
MHTML zu HTML konvertieren
Die Konvertierung von MHTML-Dateien in das HTML-Format ist häufig erforderlich, um E‑Mail‑Inhalte in Webbrowsern anzuzeigen oder für die weitere Verarbeitung in web‑basierten Anwendungen. Aspose.Email für .NET bietet einen unkomplizierten Weg, diese Konvertierung durchzuführen. Das folgende Codebeispiel zeigt, wie MHTML-Dateien mit Aspose.Email für .NET in das HTML-Format konvertiert werden:
- Verwenden Sie die MailMessage.Load Methode zum Laden der MHTML-Datei. Diese Methode liest den Inhalt der MHTML-Datei und bereitet ihn für die weitere Verarbeitung vor.
- Verwenden Sie die Speichern Methode des MailMessage Klasse, um den MHTML-Inhalt als HTML-Datei zu speichern. Geben Sie den Ausgabedateinamen und die Speicheroptionen an.
// Initialize and Load an existing MHTML file by specifying the MessageFormat
var message = MailMessage.Load("myMessage.mhtml");
message.Save("output.html", SaveOptions.DefaultHtml);
Die Bibliothek ermöglicht zudem das Ändern oder Hinzufügen benutzerdefinierter Eigenschaften zur HTML-Ausgabe, wie benutzerdefinierte Header, Betreff oder Body-Inhalt. Sie können bei Bedarf auch Anhänge in den HTML-Inhalt einbetten. Um sicherzustellen, dass der E-Mail-Inhalt in Webbrowsern oder E-Mail-Clients korrekt angezeigt wird, passen Sie die HTML-Formatierung an: Inline‑Stile, externes CSS und HTML‑Tags.
MHTML zu ICS konvertieren
Die Konvertierung von MHTML-Dateien in das ICS-Format ist entscheidend für die Verwaltung von Kalenderereignissen und Terminen. Das ICS-Format wird häufig für den Austausch von Kalenderdaten verwendet und ermöglicht die Interoperabilität zwischen verschiedenen Kalenderanwendungen. Aspose.Email für .NET bietet eine nahtlose Möglichkeit, diese Konvertierung durchzuführen. Verwenden Sie die GetAlternateViewContent Methode zum Extrahieren des ICS-Inhalts aus der MHTML-Datei. Diese Methode ruft die Kalenderinformationen im Format "text/calendar" ab. Das folgende Codebeispiel demonstriert, wie eine MHTML-Datei mit Aspose.Email für .NET in das ICS-Format konvertiert wird:
- Laden Sie die MHTML-Datei mit der MailMessage.Load Methode. Diese Methode liest den Inhalt der MHTML-Datei und bereitet ihn für die weitere Verarbeitung vor.
- Extrahieren Sie den ICS-Inhalt mit der GetAlternateViewContent.
- Wenn der ICS-Inhalt nicht null ist, speichern Sie ihn mit File.WriteAllText in einer Datei.
var eml = MailMessage.Load("message.mhtml", new MhtmlLoadOptions());
var icsView = eml.GetAlternateViewContent("text/calendar");
if (icsView != null)
{
File.WriteAllText("appointment.ics", icsView);
}
Anpassungsoptionen
Aspose.Email für .NET bietet mehrere Sonderfunktionen, die im Prozess der Konvertierung von MHTML zu ICS angewendet werden können. Diese Funktionen bieten erweiterte Kontrolle und Flexibilität, so dass Entwickler den Konvertierungsprozess gemäß spezifischen Anforderungen anpassen können.
-
Benutzerdefinierte Datums‑ und Zeitformate: Sie können benutzerdefinierte Datums- und Zeitformate für den ICS-Inhalt festlegen, um das gewünschte Ausgabeformat zu erreichen.
-
Zeitzonen‑Verarbeitung: Verwalten Sie Zeitzoneninformationen, um sicherzustellen, dass Kalenderereignisse über verschiedene Zeitzonen hinweg korrekt dargestellt werden.
-
Kodierungsoptionen: Geben Sie Kodierungsoptionen an, um sicherzustellen, dass der ICS-Inhalt korrekt kodiert ist und Probleme mit Sonderzeichen vermieden werden.
-
Umgang mit Anhängen: Extrahieren und fügen Sie erforderlichenfalls Anhänge aus der MHTML-Datei in den ICS‑Inhalt ein.
-
Benutzerdefinierte Eigenschaften: Fügen Sie dem ICS‑File benutzerdefinierte Eigenschaften hinzu, wie benutzerdefinierte Felder oder Metadaten.
Nachfolgend ein Beispiel, das zeigt, wie beim Konvertieren von MHTML zu ICS ein Appointment‑Objekt aus dem ICS‑Inhalt erstellt wird.
// Load the MHTML file
var eml = MailMessage.Load("message.mhtml", new MhtmlLoadOptions());
// Extract the ICS content
var icsView = eml.GetAlternateViewContent("text/calendar");
if (icsView != null)
{
// Create a new Appointment object from the ICS content
var appointment = Appointment.Load(new MemoryStream(Encoding.UTF8.GetBytes(icsView)));
// Customize the ICS properties
appointment.StartDate = new DateTime (2024, 12, 10);
appointment.EndDate = new DateTime (2014, 12, 11);
// Add a custom property
appointment.Summary = "Custom Event Summary";
// Save the customized ICS content to a file
var icsContent = appointment.SaveToString();
File.WriteAllText("custom_appointment.ics", icsContent);
}
Die Anpassung wird in diesem Fall mithilfe der Appointment Klasse, die einen Kalender zu einer E‑Mail darstellt, sowie ihre umfangreichen Methoden und Eigenschaften.
MHTML zu MBOX konvertieren
Das MBOX-Format wird häufig zum Speichern von Sammlungen von E‑Mail‑Nachrichten verwendet, und die Konvertierung von MHTML-Dateien in das MBOX-Format kann besonders nützlich für die Archivierung oder Migration von E‑Mail‑Daten sein. Aspose.Email für .NET bietet das WriteMessage Methode des MboxrdStorageWriter Klasse, um eine Nachricht in die MBOX-Datei zu schreiben. Das folgende Codebeispiel zeigt, wie diese Funktionen bei der Konvertierung von MHTML zu MBOX verwendet werden:
- Laden Sie die MHTML-Datei mit der MailMessage.Load.
- Initialisieren Sie das MboxrdStorageWriter um die geladene Nachricht in eine MBOX-Datei zu schreiben. Geben Sie den Ausgabedateinamen an und ob an eine bestehende MBOX-Datei angehängt werden soll.
- Schreiben Sie die Nachricht in die MBOX-Datei.
using (var message = MailMessage.Load("inputFile.mhtml", new MhtmlLoadOptions())){
using (var writer = new MboxrdStorageWriter("output.mbox", false)){
writer.WriteMessage(message);
}
}
Zusätzliche Optionen
-
An vorhandene MBOX-Dateien anhängen: Sie können Nachrichten an eine bestehende MBOX-Datei anhängen, anstatt eine neue zu erstellen. Dies ist nützlich, um eine einzige MBOX-Datei zu pflegen, die mehrere E-Mails konsolidiert.
-
Benutzerdefinierte Nachrichten‑Header: Ändern oder fügen Sie benutzerdefinierte Header zu den Nachrichten hinzu, bevor sie in die MBOX-Datei gespeichert werden.
-
Umgang mit Anhängen: Stellen Sie sicher, dass Anhänge korrekt erhalten und in die konvertierte MBOX-Datei eingefügt werden.
-
Kodierungsoptionen: Geben Sie Kodierungsoptionen an, um sicherzustellen, dass der Nachrichteninhalt korrekt kodiert ist, insbesondere bei Sonderzeichen oder verschiedenen Sprachen.
Das folgende Codebeispiel zeigt, wie einige dieser Sonderfunktionen bei der Konvertierung von MHTML zu MBOX verwendet werden können:
// Load the MHTML file
using (var message = MailMessage.Load("inputFile.mhtml", new MhtmlLoadOptions()))
{
// Customize message headers
message.Subject = "Customized Subject";
message.Headers.Add("X-Custom-Header", "CustomHeaderValue");
// Create an MboxrdStorageWriter to append the message to an existing MBOX file
using (var writer = new MboxrdStorageWriter("output.mbox", true)) // true to append
{
// Write the message to the MBOX file
writer.WriteMessage(message);
}
}
MHTML zu MSG konvertieren
Die Konvertierung von MHTML-Dateien in das MSG-Format ist nützlich für Szenarien, in denen Sie E‑Mail‑Nachrichten innerhalb von Microsoft Outlook verwalten oder teilen müssen. Aspose.Email ermöglicht diese Konvertierung und sorgt dafür, dass die E‑Mail ihr ursprüngliches Format und ihren Inhalt beibehält. Das folgende Codebeispiel demonstriert, wie eine MHTML-Datei mit Aspose.Email für .NET in das MSG-Format konvertiert wird:
- Laden Sie die MHTML-Datei mit der MailMessage.Load.
- Verwenden Sie die Speichern Methode des MailMessage Klasse, um die geladene Nachricht als MSG-Datei zu speichern. Geben Sie den Ausgabedateinamen an und verwenden Sie die DefaultMsgUnicode Speicheroption, um sicherzustellen, dass die Datei im korrekten Format gespeichert wird.
var eml = MailMessage.Load("message.mhtml", new MhtmlLoadOptions());
eml.Save("message.msg", SaveOptions.DefaultMsgUnicode);
Zusätzliche Funktionen
Aspose.Email für .NET bietet mehrere Sonderfunktionen, die im Konvertierungsprozess implementiert werden können, wodurch Kontrolle und Anpassungsoptionen verbessert werden und Entwickler den Vorgang nach spezifischen Anforderungen anpassen können.
-
Benutzerdefinierte Nachrichteneigenschaften: Ändern oder fügen Sie benutzerdefinierte Eigenschaften zur MSG-Datei hinzu, wie benutzerdefinierte Header, Betreff oder Body-Inhalt.
-
Umgang mit Anhängen: Stellen Sie sicher, dass Anhänge korrekt erhalten und in die konvertierte MSG-Datei aufgenommen werden. Sie können auch neue Anhänge hinzufügen oder vorhandene ändern.
-
Setzen von Nachrichtenflags: Setzen Sie Flags für die Nachricht, z. B. gelesen/ungelesen oder Wichtigkeitsstufe.
-
Kodierungsoptionen: Geben Sie Kodierungsoptionen an, um sicherzustellen, dass der Nachrichteninhalt korrekt kodiert ist, insbesondere bei Sonderzeichen oder verschiedenen Sprachen.
-
HTML-Formatierung: Stellen Sie sicher, dass der HTML-Inhalt der E‑Mail korrekt formatiert und in der MSG‑Datei erhalten bleibt.
Das folgende Codebeispiel zeigt, wie einige dieser Sonderfunktionen bei der Konvertierung von MHTML zu MSG verwendet werden können:
// Load the MHTML file
var eml = MailMessage.Load("message.mhtml", new MhtmlLoadOptions());
// Customize message properties
eml.Subject = "Customized Subject";
eml.Headers.Add("X-Custom-Header", "CustomHeaderValue");
// Add an attachment
var attachment = new Attachment("path/to/attachment.txt");
eml.Attachments.Add(attachment);
// Set message flags
eml.IsRead = true; // Mark as read
eml.Priority = MailPriority.High; // Set high priority
// Save the loaded message as an MSG file with default Unicode options
eml.Save("message.msg", SaveOptions.DefaultMsgUnicode);
MHTML zu OFT konvertieren
Die Konvertierung von MHTML-Dateien in das OFT-Format ist nützlich für Szenarien, in denen Sie E-Mail-Vorlagen für Microsoft Outlook erstellen müssen. Aspose.Email für .NET ist eine robuste Lösung für diese Konvertierung. Das folgende Codebeispiel zeigt, wie eine MHTML-Datei mit Aspose.Email für .NET in das OFT-Format konvertiert wird:
- Laden Sie die MHTML-Datei mit der MailMessage.Load.
- Speichern Sie die geladene Nachricht als OFT-Datei mit der Speichern Methode des MailMessage Klasse. Geben Sie den Ausgabedateinamen an und verwenden Sie die DefaultOft Speicheroption, um sicherzustellen, dass die Datei im korrekten Format gespeichert wird.
var eml = MailMessage.Load("message.mhtml", new MhtmlLoadOptions());
eml.Save("message.oft", SaveOptions.DefaultOft);
Sonderfunktionen
Aspose.Email für .NET bietet mehrere Sonderfunktionen, die im Prozess der Konvertierung von MHTML zu OFT implementiert werden können, wie z. B. das Anpassen von Nachrichteneigenschaften, die Handhabung von Anhängen, das Setzen von Nachrichtenflags, Kodierungsoptionen und HTML-Formatierung. Die nachstehenden Codebeispiele demonstrieren die Umsetzung einiger dieser Funktionen:
eml.Subject = "Customized Subject";
eml.Headers.Add("X-Custom-Header", "CustomHeaderValue");
Diese Zeilen zeigen, wie der Betreff geändert und ein benutzerdefinierter Header zur Nachricht hinzugefügt wird, bevor sie als OFT-Datei gespeichert wird.
var attachment = new Attachment("path/to/attachment.txt");
eml.Attachments.Add(attachment);
Dieser Code fügt der E-Mail-Nachricht einen neuen Anhang hinzu.
eml.IsRead = true; // Mark as read
eml.Priority = MailPriority.High; // Set high priority
Diese Zeilen setzen die Nachricht als gelesen und weisen ihr eine hohe Priorität zu.
MHTML zu OST konvertieren
Wenn Sie E-Mail-Nachrichten innerhalb von Microsoft Outlook offline speichern und verwalten müssen, kann die Konvertierung in das OST-Format (Offline Storage Table) nützlich sein. Für die MHTML-zu-OST-Konvertierung bietet Aspose.Email für .NET eine unkomplizierte Methode. In wenigen Codezeilen können Sie eine bestehende OST-Datei laden, anschließend eine MHTML-Datei und diese dem Zielordner hinzufügen. Das folgende Codebeispiel zeigt, wie diese Konvertierung durchgeführt wird:
- Verwenden Sie die PersonalStorage.FromFile Methode zum Laden einer bestehenden OST-Datei.
- Verwenden Sie die MapiMessage.Load Methode zum Laden der MHTML-Datei. Diese Methode liest den Inhalt der MHTML-Datei und konvertiert ihn in ein MapiMessage-Objekt.
- Lokalisieren Sie den Zielordner innerhalb der OST-Datei (z. B. "Inbox") und verwenden Sie die AddMessage Methode, um die konvertierte MHTML-Nachricht zu diesem Ordner hinzuzufügen.
using (var ost = PersonalStorage.FromFile("storage.ost"))
{
// Load the EML file
var msg = MapiMessage.Load("message.mhtml", new MhtmlLoadOptions());
// Add the EML message to the OST file
var folderInfo = ost.RootFolder.GetSubFolder("Inbox");
folderInfo.AddMessage(msg);
}
Neben der Möglichkeit, benutzerdefinierte Eigenschaften wie benutzerdefinierte Header, Betreff oder Body-Inhalt zur MHTML-Datei hinzuzufügen oder zu ändern, bevor sie als OST-Nachricht gespeichert wird, ermöglicht Aspose.Email außerdem das Hinzufügen neuer Anhänge oder das Ändern vorhandener, das Setzen von Klassifikationsflags wie gelesen/ungelesen, Wichtigkeitsstufe oder Follow‑Up‑Flags; das Beibehalten der umfangreichen HTML‑Formatierung des E‑Mail-Inhalts, einschließlich Stilvorlagen, Bilder und eingebettete Ressourcen; sowie das Erstellen neuer Ordner oder das Organisieren von Nachrichten in bestehenden Ordnern innerhalb der OST-Datei, um eine strukturierte Organisation zu gewährleisten.
// Load the OST file
using (var ost = PersonalStorage.FromFile("storage.ost"))
{
// Load the MHTML file
var msg = MapiMessage.Load("message.mhtml", new MhtmlLoadOptions());
// Customize message properties
msg.Subject = "Customized Subject";
msg.Headers.Add("X-Custom-Header", "CustomHeaderValue");
// Add an attachment
var attachment = new MapiAttachment("path/to/attachment.txt", "attachment.txt");
msg.Attachments.Add(attachment);
// Set message flags
msg.SetMessageFlags(MapiMessageFlags.MSGFLAG_READ); // Mark as read
msg.Importance = MapiImportance.High; // Set high importance
// Get the target folder
var folderInfo = ost.RootFolder.GetSubFolder("Inbox");
// Add the customized message to the OST file
folderInfo.AddMessage(msg);
}
MHTML zu PST konvertieren
Das Konvertieren von MHTML-Dateien in das PST-Format (Personal Storage Table) ist nützlich für Szenarien, in denen Sie E-Mail-Nachrichten innerhalb von Microsoft Outlook speichern und verwalten müssen. Aspose.Email für .NET bietet eine vierstufige Lösung zur Durchführung dieser Konvertierung:
- Erstellen Sie eine neue PST-Datei mit dem PersonalStorage.Create Methode. Diese Methode initialisiert eine neue PST-Datei mit dem angegebenen Namen und der Dateiformatversion.
- Erstellen Sie einen Unterordner innerhalb der PST-Datei (z. B. "Inbox") mit der Methode AddSubFolder.
- Laden Sie die MHTML-Datei mit der MapiMessage.Load Methode. Diese Methode liest den Inhalt der MHTML-Datei und konvertiert ihn in ein MapiMessage-Objekt.
- Fügen Sie die Nachricht der PST-Datei hinzu mit dem AddMessage Methode, um die konvertierte MHTML-Nachricht dem angegebenen Ordner innerhalb der PST-Datei hinzuzufügen.
using (var pst = PersonalStorage.Create("outputFile.pst", FileFormatVersion.Unicode))
{
var inbox = pst.RootFolder.AddSubFolder("Inbox");
var msg = MapiMessage.Load("sourceFile.mhtml", new MhtmlLoadOptions());
inbox.AddMessage(msg);
}
Weitere Optionen, die beim Konvertieren von MHTML-Dateien in das PST-Format verwendet werden können, finden Sie unter MHTML zu OST konvertieren.
MHTML zu VCF konvertieren
Das Konvertieren von MHTML-Dateien in das VCF (vCard)-Format ist eine gängige Lösung, wenn Sie Kontaktinformationen aus E-Mails extrahieren und speichern müssen. Aspose.Email für .NET
- Verwenden Sie die MailMessage.Load Methode zum Laden der MHTML-Datei. Diese Methode liest den Inhalt der MHTML-Datei und konvertiert ihn in ein MailMessage-Objekt.
- Verwenden Sie die GetAlternateViewContent Methode zum Finden der alternativen Ansicht mit dem Medientyp "text/vcard". Diese Methode extrahiert den vCard-Inhalt aus der E-Mail-Nachricht.
- Überprüfen Sie, ob der vCard-Inhalt gefunden wird, und speichern Sie ihn gegebenenfalls mit File.WriteAllText in einer VCF-Datei.
var eml = MailMessage.Load("message.mhtml", new MhtmlLoadOptions());
var vcfView = eml.GetAlternateViewContent("text/vcard");
if (vcfView != null)
{
File.WriteAllText("contact.vcf", vcfView);
}
Spezialfunktionen für die MHTML-zu-VCF-Konvertierung
-
Benutzerdefinierte Eigenschaftsbehandlung: Ändern oder fügen Sie benutzerdefinierte Eigenschaften zur vCard hinzu, bevor Sie sie speichern. Dies kann benutzerdefinierte Felder, zusätzliche Kontaktinformationen oder personalisierte Daten umfassen.
-
Mehrfachkontakt-Extraktion: Extrahieren Sie mehrere Kontakte, wenn die MHTML-Datei mehrere vCard-Einträge enthält, und speichern Sie jeden Kontakt als separate VCF-Datei.
-
Kodierungsoptionen: Stellen Sie eine korrekte Kodierung der Kontaktinformationen sicher, um verschiedene Zeichensätze und Internationalisierung zu unterstützen.
-
vCard-Versionen: Konvertieren und speichern Sie die vCard in verschiedenen Versionen (v2.1, v3.0, v4.0) basierend auf den Kompatibilitätsanforderungen der Zielanwendung.
-
Umgang mit eingebetteten Bildern: Extrahieren und speichern Sie eingebettete Bilder oder Fotos, die den Kontakten in der vCard zugeordnet sind.
-
Kontakte zusammenführen: Mehrere vCard-Einträge zu einer einzigen VCF-Datei kombinieren für ein effizientes Kontaktmanagement.
Nachfolgend ein Beispiel, das zeigt, wie einige dieser besonderen Funktionen beim Konvertieren von MHTML zu VCF verwendet werden können:
// Load the MHTML file
var eml = MailMessage.Load("message.mhtml", new MhtmlLoadOptions());
// Find the alternate view with MediaType "text/vcard" (VCF)
var vcfView = eml.GetAlternateViewContent("text/vcard");
// If a VCF view is found, save it to a file
if (vcfView != null)
{
// Ensure proper encoding
var encodedVcfView = Encoding.UTF8.GetString(Encoding.UTF8.GetBytes(vcfView));
// Save the vCard to a file
File.WriteAllText("contact.vcf", encodedVcfView);
}