项目中引入cdosys.dll组件,位置:  C:\Windows\System32\cdosys.dll

CDO、ADODB 这些类都来自于cdosys.dll组件

/// <summary>
/// 把Html格式二进制流转换成Mht格式的二进制流
/// </summary>
/// <param name="htmlUrl">Html格式的二进制流</param>
/// <returns>Mht格式的二进制流</returns>
public static byte[] ConvertHtmlUrlToMht(string htmlUrl)
{
string _CharSet = "gb2312";
string strMhtContent = string.Empty;
byte[] BytMhtContent = null;
CDO.Message message = new CDO.MessageClass();
ADODB.Stream stream = null;
message.MimeFormatted = true;
message.CreateMHTMLBody(htmlUrl, CDO.CdoMHTMLFlags.cdoSuppressNone, "", "");
stream = message.GetStream();
stream.Charset = _CharSet;
strMhtContent = stream.ReadText(stream.Size);
BytMhtContent = Encoding.GetEncoding(_CharSet).GetBytes(strMhtContent);
return BytMhtContent;
}
/// <summary>
/// 把Html格式二进制流转换成Mht格式的二进制流,成功返回true,失败返回false
/// </summary>
/// <param name="htmlUrl">Html格式的二进制流</param>
/// <param name="filePath">Mht文件的保存路径</param>
/// <returns>操作结果 成功:true,失败;false</returns>
public static bool ConvertHtmlUrlToMht(string htmlUrl, string filePath)
{
bool isConvertHtmlBytesToMht = false;
CDO.Message message = new CDO.MessageClass();
ADODB.Stream stream = null;
message.MimeFormatted = true;
message.CreateMHTMLBody(htmlUrl, CDO.CdoMHTMLFlags.cdoSuppressNone, "", "");
stream = message.GetStream();
stream.SaveToFile(filePath, ADODB.SaveOptionsEnum.adSaveCreateOverWrite);
message = null;
stream.Close();
isConvertHtmlBytesToMht = true;
return isConvertHtmlBytesToMht;
}

转载于:https://www.cnblogs.com/wq3if2in/p/3625930.html

C# html转mht相关推荐

  1. C#代码实现把网页文件保存为mht文件

    MHT叫"web单一文件".顾名思义,就是把网页中包含得图片,CSS文件以及HTML文件全部放到一个MHT文件里面.而且浏览器可以直接读取得. 由于项目需要,需实现把指定的网页文件 ...

  2. python解析mht文件_php解析mht文件转换成html的方法

    本篇文章主要介绍php解析mht文件转换成html的方法,感兴趣的朋友参考下,希望对大家有所帮助. php解析mht文件,使用编辑器打开可以看到base64编码所以,mht是可以转换成html的. / ...

  3. python读取html文件中的表格数据_Python 读取各类文件格式的文本信息 | doc,excel,html,mht...

    原标题:Python 读取各类文件格式的文本信息 | doc,excel,html,mht 众所周知,python最强大的地方在于,python社区汇总拥有丰富的第三方库,开源的特性,使得有越来越多的 ...

  4. 使用TWebBrowser组件保存网页为html和mht文件 收藏

    使用TWebBrowser组件保存网页为html和mht文件 收藏 一.保存为HTML文件 uses ActiveX; ... procedure WB_SaveAs_HTML(WB : TWebBr ...

  5. MHT格式文件更换默认图标及打开后显示乱码的问题

    由于重装了系统并更换了默认的浏览器,将默认的IE更换为了Safari,原来关联的mht格式文件无法打开且没有默认的图标,看着很不舒服.今天想把*.mht格式文件与IE重新关联并更换图标. 1. 更换默 ...

  6. 使用Chrome保存网页为mht文件

    一直在使用chrome浏览器,但由于需要将部分网页保存为mht文件,却发现chrome默认不支持.chrome浏览器默认支持2种:单独的html文件,全部: 万能的chrome怎么可能保存不了mht? ...

  7. Chrome保存mht网页文件的方法 – 无需任何插件,完美!

    保存网页最好的方法就是另存为.mht文件了.这是一种聚合网页文件,它可以包括整个网页的文字.图片及Flash等,特别好用. 在 Chrome 地址栏中键入"chrome://flags&qu ...

  8. php利用mht导出word,解析掌握PHP导出Word文档原理

    解析掌握PHP导出Word文档原理 PHP言语可能被咱们用来完成很多性能.比如在网站树立中,咱们常常会用到网页导出数据的情况.今天就为大家引见无关PHP导出Word文档的原理. 普通,有2种方法可能导 ...

  9. 带有富文本数据如何导出word文档(使用mht模板)

    一.制作mht模板 使用word(不能用wps)制作好导出后想要的样子,并使用占位符填充,例如${NAME},设置好格式,另存为.mht格式的文件.之后用文本编辑器打开(我用的notepad++),检 ...

最新文章

  1. ionic 实现仿苹果手机通讯录搜索功能
  2. JavaScript toLocaleString()时间转化为字符串
  3. 推荐模型是怎样由窄变宽、越变越深的?
  4. python如何画图设置坐标轴_python matplotlib坐标轴设置的方法
  5. [poj2449]Remmarguts' Date(spfa+A*)
  6. 5分钟看懂XCP协议
  7. Nginx配置域名重定向/域名跳转
  8. 开放数据库:中医古方数据库
  9. input 测试工具 --evtest
  10. 分享应用于桌面闹钟的超低成本MG127蓝牙射频前端芯片
  11. Java+MySQL基于SSM的爱心救助车队管理系统的设计与实现 开题 毕业设计
  12. [软考]之原码、反码、补码和移码
  13. 面试官:请你说一说vuex的五个属性,分别是什么,区别和用途说一下
  14. 全球工业互联网平台应用案例分析报告
  15. 大学物理:CH3-振动
  16. CSS圆角 border-radius椭圆 / 正斜杠是什么?
  17. 如何向纯洁的女朋友解释并发与并行的区别?
  18. 关闭自动维护 - Win10
  19. 【语义分割】DeepLab系列
  20. 自动空调是嵌入计算机,汽车自动空调基本结构及原理

热门文章

  1. IDEA 修改项目名称
  2. Mysql数据类型blob存储长度
  3. MySQL 存储过程 if语句
  4. Kotlin入门教程——目录索引
  5. Android开发笔记(五十六)摄像头拍照
  6. Android开发笔记(六)可变字符串
  7. Zabbix监控Oracle 连接数
  8. Oracle管理文件OMF (oracle managed files)
  9. Android提升篇系列:Activity recreate(Activity 重新创建/自我恢复)机制(一)
  10. [J2ME QA]untrusted domain is not configured问题回应