Csharp调用微软COM转换word为HTML
来源:互联网 发布:数据库用什么语言 编辑:程序博客网 时间:2024/06/04 18:09
使用微软的office中的word软件只要使用另存为就可以把一个word保存为HTML网页文件。但如何通过程序调用完成转化呢?
以下使用office 2007为例,其他版本略有不同。
1添加引用,对于不同的版本,有所不一样。当然前提自然是安装了对应的微软office软件。
2转换代码如下:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using Word=Microsoft.Office.Interop.Word; namespace CommonConvert{ public class WordToHtml { /// <summary> /// 使用反射调用方法,返回生成的HTML文件路径 /// </summary> /// <param name="wordFullFileName"></param> /// <returns></returns> public string WordToHtmlFile(string wordFullFileName) { //在此处放置用户代码以初始化页面 Word.Application word = new Word.Application(); Type wordType = word.GetType(); Word.Documents docs = word.Documents; //打开文件 Type docsType = docs.GetType(); Word.Document doc = (Word.Document)docsType.InvokeMember("Open", System.Reflection.BindingFlags.InvokeMethod, null, docs, new Object[] { wordFullFileName, true, true }); Type docType = doc.GetType(); string htmlFullFileName = wordFullFileName + ".html"; //HTML文件路径 //转换格式,另存为 docType.InvokeMember("SaveAs", System.Reflection.BindingFlags.InvokeMethod, null, doc, new object[] { htmlFullFileName, Word.WdSaveFormat.wdFormatFilteredHTML }); docType.InvokeMember("Close", System.Reflection.BindingFlags.InvokeMethod, null, doc, null); //退出 Word wordType.InvokeMember("Quit", System.Reflection.BindingFlags.InvokeMethod, null, word, null); return htmlFullFileName; } /// <summary> /// 直接调用方法,不使用反射 /// </summary> /// <param name="wordFullFileName"></param> /// <returns></returns> public string WordToHtmlFile2(string wordFullFileName) { //在此处放置用户代码以初始化页面 Word.Application word = new Word.Application(); Word.Documents docs = word.Documents; //打开文件 // Type docsType = docs.GetType(); //Word.Document doc = (Word.Document)docsType.InvokeMember("Open", System.Reflection.BindingFlags.InvokeMethod, null, docs, new Object[] { wordFullFileName, true, true }); object owordFullFileName = wordFullFileName; Word.Document doc = docs.Open(ref owordFullFileName); //转换格式,另存为 string htmlFullFileName = wordFullFileName + ".html"; //HTML文件路径 doc.SaveAs(htmlFullFileName, Word.WdSaveFormat.wdFormatFilteredHTML); doc.Close(); //退出 Word word.Quit(); return htmlFullFileName.ToString(); } }}
参考文章
0 0
- Csharp调用微软COM转换word为HTML
- Csharp调用微软COM转换excel为HTML
- Csharp调用微软COM转换ppt为HTML
- 使用Jacob调用word将word转换为html
- jacob word 转换为 html
- word转换为html后的工作
- 运用 Jacob转换Word,Excel为HTML
- Python转换office word文件为HTML
- C# 将Word文档转换为HTML
- Java使用Jacob转换Word为HTML
- C# 将Word文档转换为HTML
- Java使用Jacob转换Word为HTML
- HTML转换为word的思路
- Java使用Jacob转换Word为HTML
- word(doc,docx)转换为HTML
- Java使用Jacob转换Word为HTML
- [JAVA]: Jacob 转换Word,Excel为HTML
- 使用poi将word转换为html
- Crazyflie 2.0 System Architecture
- c#设计模式---建造者模式(Builder Pattern)
- c++primer 要点-函数
- 【读书笔记】Linux高性能服务器编程(第二篇 第五章)
- [Ovject-c] 文件处理 (一) plist文件
- Csharp调用微软COM转换word为HTML
- 黑马程序员——String类详解
- Dijkstra算法求任意点到其它点的最短路径
- 面试技巧之群面
- Ueditor图片上传设置(1.4.3 JSP版本)
- POJ 2431 Expedition(贪心)
- Lua的类型与值
- linux 信号屏蔽
- 新版ADT创建项目时出现appcompat_v7\bin(missing),ppcompat_v7/gen(missing)的问题