Извлечение содержимого из документа MHT

Кто-нибудь знает какие-либо библиотеки для работы с файлами MHT ( MIME-файлами из нескольких частей) в.NET? Мне нужно программно извлечь содержимое из существующего файла MHT, содержащего веб-сайт Flash. Я не смог найти ни одной такой библиотеки.

Кроме того, если в.NET есть собственный способ, о котором я не знаю, пожалуйста, дайте мне знать.

РЕДАКТИРОВАТЬ: я знаю, что класс MailMessage поддерживает сообщения MIME из нескольких частей через свойство AlternateViews. Класс AlternateView представляет альтернативные представления в MIME-сообщении из нескольких частей. Я хотел бы верить, что эти знания можно использовать для создания чего-либо с использованием кода, встроенного в.NET Framework. Я просто не смог найти правильную комбинацию, чтобы заставить ее работать, поэтому я начинаю терять веру. Кто-нибудь знает, возможно ли извлечь содержимое файла MHT через AlternateView и другие связанные классы? Например, было бы неплохо, если бы можно было создать экземпляр класса MailMessage из потока.

3 ответа

Решение

Возможно, вас заинтересует мой проект разбора MIME на github (написан на C#)

https://github.com/smithimage/MIMER/

Также есть пакет Nuget:

https://nuget.org/packages/MIMER/

http://www.lumisoft.ee/lswww/ENG/Products/Mail_Server/mail_index_eng.aspx?type=info

Это почтовый сервер с открытым исходным кодом, который имеет хороший Mime Parser.

Дэвид Бенко проделал большую работу здесь, в своем проекте GitHub. Недавно я столкнулся с этой проблемой, где у меня был HTML, который нужно было преобразовать в файл HTML. для этого я использовал HTMLAgility pack dll для извлечения контента из файла mhtml и подачи этого контента в библиотеку Дэвида:

string filePath = @"D:\Temp\myfile.mhtml";
var doc = new HtmlDocument();
doc.Load(filePath);
string mhtml = doc.DocumentNode.OuterHtml;
MHTMLParser parser = new MHTMLParser(mhtml);
string htmlContent = parser.getHTMLText();
System.IO.File.WriteAllText(@"D:\Temp\file.html", htmlContent);

Буду очень признателен, если кто-нибудь сможет проверить этот подход. Ура Вакар

Другие вопросы по тегам