1.如何批量将mht转成word格式,单个转换另存为太麻烦
第一步,先制作了一个很简单的html模板。
将动态内容用诸如“$htmldata[1]”来代替,等取出数据后用Replace函数进行替换。 <!doctype html="" public="" "-//w3c//dtd="" xhtml="" 1.0="" transitional//en"="" "1/dtd/xhtml1-transitional.dtd"="">
$htmldata[1] $htmldata[2] $htmldata[3] $htmldata[4] 第二步: 建立一个静态类,代码如下: public class Function { static Function() { } //根据html生成mht文件,需要引入相应的dll,如图所示 public static void HtmlToMht(string src, string dst) { CDO.Message msg = new CDO.MessageClass(); CDO.Configuration c = new CDO.ConfigurationClass(); msg.Configuration = c; msg.CreateMHTMLBody(src, CDO.CdoMHTMLFlags.cdoSuppressNone, "", ""); ADODB.Stream stream = msg.GetStream(); stream.SaveToFile(dst, ADODB.SaveOptionsEnum.adSaveCreateOverWrite); } public static void WriteHtml(string name,string content,string addTime,string hits,stringuser)//参数内容都是从数据库读出来的文章信息,其中content就是ewebeditor生成的html代码 { DateTime dt = DateTime.Parse(addTime);//将string型的日期格式转为DateTime型的因为默认的日期格式不能作为文件名,所以将日期的“:”替换为“-” string Temp_Name = @"D:\Application\Visual Studio 2010\Projects\富文本转Word\富文本转Word\temp\Articles.html";//HTML模板的路径 string File_Name = @"D:\Application\Visual Studio 2010\Projects\富文本转Word\富文本转Word\html\【" + dt.ToShortDateString().Replace("/","-") +"】" +name + ".html";//生成html文件的路径 string File_NameM = @"D:\Application\Visual Studio 2010\Projects\富文本转Word\富文本转Word\html\【" + dt.ToShortDateString().Replace("/","-") +"】" +name + ".mht";//生成mht文件的路径 string File_Name2 = @"D:\Application\Visual Studio 2010\Projects\富文本转Word\富文本转Word\html\【" + dt.ToShortDateString().Replace("/", "-") + "】" + name + ".doc";//生成Word文档的路径 StreamReader sr = new StreamReader(Temp_Name); StringBuilder htmltext = new StringBuilder(); String line; while ((line = sr.ReadLine()) != null) { htmltext.Append(line);//读取到html模板的内容 } sr.Close(); //替换相应的内容到指定的位置 htmltext = htmltext.Replace("$htmldata[1]", name); htmltext = htmltext.Replace("$htmldata[2]", name); htmltext = htmltext.Replace("$htmldata[3]", ("点击数:" + hits + " 发布时间:" + addTime + " 发布者:" + user)); htmltext = htmltext.Replace("$htmldata[4]", content); using (StreamWriter sw = new StreamWriter(File_Name, false, System.Text.Encoding.GetEncoding("UTF-8"))) //保存地址 { //生成HTML文件 sw.WriteLine(htmltext); sw.Flush(); sw.Close(); } HtmlToMht(File_Name, File_NameM);//因为带图片的html直接转为Word的话,图片会以引用的形式展示(也就是说不是内置到word文档里去的,一旦断网或将图片放在别的路径之后,打开word文档图片会显示不出来,所以通过折冲的办法先生成html,然后转换为mht,再转为word) WordAction.SaveAsWord(File_NameM, File_Name2);//生成word } } 建立另外一个操作word 的静态类,代码如下(代码都是拷的O(∩_∩)O): public class WordAction { public static void SaveAsWord(string fileName, string pFileName)//使用原生方法将mht转换为word文档,不是那种直接修改后缀名的方式 { object missing = System.Reflection.Missing.Value; object readOnly = false; object isVisible = true; object file1 = fileName; object html1 = pFileName; object format = WdSaveFormat.wdFormatDocument; ApplicationClass oWordApp = new ApplicationClass(); 。
2.怎么将excel数据一次性全部导入word文档
操作的方法如下: 1、打开文字文档以后,先做好表格,接着找到文档中工具栏的“工具”按钮。
2、点击之后,就会弹出一个命令菜单,在其中找到“邮件合并工具栏”,点击“邮件合并工具栏”以后就会出现一个工具栏了。 3、在这个工具栏中找到如下图的图标,点击打开数据源。
4、接着就会出现一个选择框,选择好需要导入的数据源excel文件,点击确定。 5、接着鼠标如下图点击要导入数据文档表格中的单元格,让光标在这个单元格总闪动,然后点击第二幅图上的图标“插入合并域”。
6、接着选择要输入的项目,点击确定,就能看到第二幅图中单元格里出现了《姓名》,出生日期和性别也可以用同样的方法输入。 7、然后点击如下图”合并到新文档“,在合并到新文档设置中选择要导入的数据起始行和结束行,点击确定。
8、接着就会发现excel中的数据全部导入到了文档的表格里。 。
3.怎么将excel数据一次性全部导入word文档
我教你一种把excel直接转换成word文档的方法吧,这样就不用导入数据了,直接当word文档使用。
例如excel里面的表格
1.打开文件表格
2.点击“文件”→“另存为web页”。web页就是网页文件,在“保存选项”处把“保存整个工作簿”调整成“选择:工作表”,把默认文件名"Page.mht ”根据实际情况改成你所需要的名字,再点击“保存”。注意,在改名时绝对不可以把后面的.mht去掉,只要改“.”前面的部分就可以了。
3.此时在桌面上便有一个文档:工作表范例
4.右键单击该文档,选择“打开方式”,在下拉列表中选择“Microsoft Office Word”,打开该文档,一个完美的word文档就呈现在你面前啦!
所以不用导入,直接转换。
转载请注明出处51数据库 » mht批量导入word
!doctype>