编程方式加载css文件夹,如何以编程方式(或使用工具)将.MHT mhtml文件转换为常规的HTML和CSS文件?...
MHT文件本质上是MIME。因此,可以使用Chilkat.Mime或完全免费的System.Net.Mime组件来访问其内部结构。例如,如果MHT包含图像,则可以用输出HTML中的base64字符串替换它们。
Imports HtmlAgilityPack
Imports Fizzler.Systems.HtmlAgilityPack
Imports Chilkat
Public Function ConvertMhtToHtml(ByVal mhtFile As String) As String
Dim chilkatWholeMime As New Chilkat.Mime
'Load mime'
chilkatWholeMime.LoadMimeFile(mhtFile)
'Get html string, which is 1-st part of mime'
Dim html As String = chilkatWholeMime.GetPart(0).GetBodyDecoded
'Create collection for storing url of images and theirs base64 representations'
Dim allImages As New Specialized.NameValueCollection
'Iterate through mime parts'
For i = 1 To chilkatWholeMime.NumParts - 1
Dim m As Chilkat.Mime = chilkatWholeMime.GetPart(i)
'See if it is image'
If m.IsImage AndAlso m.Encoding = "base64" Then
allImages.Add(m.GetHeaderField("Content-Location"), "data:" + m.ContentType + ";base64," + m.GetBodyEncoded)
End If : m.Dispose()
Next : chilkatWholeMime.Dispose()
'Now it is time to replace the source attribute of all images in HTML with dataURI'
Dim htmlDoc As New HtmlDocument : htmlDoc.LoadHtml(html) : Dim docNode As HtmlNode = htmlDoc.DocumentNode
For i = 0 To allImages.Count - 1
'Select all images, whose src attribute is equal to saved URL'
Dim keyURL As String = allImages.GetKey(i) 'Saved url from MHT'
Dim elementsWithPics() As HtmlNode = docNode.QuerySelectorAll("img[src='" + keyURL + "']").ToArray
Dim imgsrc As String = allImages.GetValues(i)(0) 'dataURI as base64 string'
For j = 0 To elementsWithPics.Length - 1
elementsWithPics(j).SetAttributeValue("src", imgsrc)
Next
'Select all elements, whose style attribute contains saved URL'
elementsWithPics = docNode.QuerySelectorAll("[style~='" + keyURL + "']").ToArray
For j = 0 To elementsWithPics.Length - 1
'Get and modify style'
Dim modStyle As String = Strings.Replace(elementsWithPics(j).GetAttributeValue("style", String.Empty), keyURL, imgsrc, 1, 1, 1)
elementsWithPics(j).SetAttributeValue("style", modStyle)
Next : Erase elementsWithPics
Next
'Get final html'
Dim tw As New StringWriter()
htmlDoc.Save(tw) : html = tw.ToString : tw.Close() : tw.Dispose()
Return html
End Function
编程方式加载css文件夹,如何以编程方式(或使用工具)将.MHT mhtml文件转换为常规的HTML和CSS文件?...相关推荐
- 使用SDWebImage淡入淡出的方式加载图片
使用SDWebImage淡入淡出的方式加载图片 效果: 请通过以下方式下载源码: 找到它修改文件的地方: 以下是使用源码: // // ViewController.m // SDWebImageFa ...
- Linux下编译、链接、加载运行C++ OpenCV的两种方式及常见问题的解决
Linux下编译.链接.加载运行C++ OpenCV的两种方式及常见问题的解决 在Linux下安装完OpenCV C++之后(还没有安装的读者请参考Ubuntu 18.04 安装OpenCV C++) ...
- Javascript 的模块化编程及加载模块【转载+整理】
http://www.ruanyifeng.com/blog/2012/10/javascript_module.html 本文内容 引入 模块化 最初写法 对象写法 立即执行函数写法 放大模式 宽放 ...
- 【js】【cornerstone】cornerstone使用url方式加载图像
[js][cornerstone]cornerstone使用url方式加载图像 引入cornerstoneWebImageLoader loadImage 引入cornerstoneWebImageL ...
- Unity两中方式加载图片
看到草羊发的图片,也是真懒. 想起来当时写天气预报现在都忘干净了,好记性不如烂笔头,还是应该多记.自己打下来好了 using System; using System.Collections; usi ...
- layui信息加载流的方式加载数据
SSM项目中使用layui信息加载流的方式加载数据 这里首先jsp页面来一个div容器,这里数数据显示的地方 //css样式: <style type="text/css"& ...
- ListView上拉加载和下拉刷新多种实现方式
ListView上拉加载和下拉刷新多种实现方式 该篇为ListView下拉刷新和上拉加载实现的各种方法大合集.可能在具体的细节逻辑上处理不太到位,但基本上完成逻辑的实现.细节方面,个人可以根据自己的需 ...
- maven使用systemPath方式加载本地jar
1.背景 在对接第三方厂商时,会提供对应jar,maven公开仓库上没有发布,提供的处理方法. 上传的公司私服. systemPath方式加载本地jar. 本文要讲的就是使用systemPath方式加 ...
- 在html中怎么插入腾讯视频,腾讯视频加载方案, 网页嵌入腾讯视频方式 iframe, 网页嵌入腾讯视频方式...
前言:更多详细内容可以参考腾讯开发平台的文档,我在这里简单备忘一下 方法一:引入iframe 在视频播放界面的左下方,鼠标移动到分享,复制通用代码放在页面上即可 腾讯视频加载方案, 网页嵌入腾讯视频方 ...
- 《ArcGIS Runtime SDK for Android开发笔记》——(13)、图层扩展方式加载Google地图...
1.前言 http://mt2.google.cn/vt/lyrs=m@225000000&hl=zh-CN&gl=cn&x=420&y=193&z=9& ...
最新文章
- 隐藏原生select下拉框的向下箭头▼
- 【Spring】【JUnit】单元测试
- 如何应用设计模式设计你的足球引擎
- 华中农业大学第五届程序设计大赛网络同步赛-G
- oracle job 定时执行参数
- python远程监控jvm_python和jstat命令采集jvm数据导入zabbix监控-阿里云开发者社区
- Unity Text 插入超链接
- hostingEnvironment与宿主环境
- 基于 Redis3.2.4 集群搭建说明
- firefox关闭窗口问题
- 计算机专业基础 -- Spring系列框架相关基础知识
- 【翻译】Sencha Touch 2入门:创建一个实用的天气应用程序之一
- web系统之猜数游戏——项目总结
- 流氓又见流氓!-有感雅虎中国通过公证部门 证明雅虎助手非恶意软件
- Krpano全景漫游开发手册
- 中文讲解 机器学习 Machine Learning in Business 第二版,约翰.赫尔(John C. Hull ),Chenghsi Hsieh老师
- 百度坐标转换中文地址(百度地图JavaScript API逆地址解析 )
- dw注册页面html,在 Dreamweaver 中生成注册页 - Dreamweaver 用户指南
- Spring MVC的数据绑定(简单数据绑定+POJO类型绑定)
- 计算几何(中线长计算三角形面积) - Medians - UVA 10347