C#把Word文档转换成HTML

C#Word文档转换成HTML

目前做的OA项目中有一个信息处理的模块,其中要将Word文档转换成HTML.

 

利用Microsoft Word 10.0 Object Library可以在页面中对Word文档进行格式转换。有关Word对象的一些方法可以参考OpenSave

 

在开始之前首先要在解决方案资源管理器引用文件夹上单击鼠标右键添加引用:

 

Microsoft Word 10.0 Object Library

 

下面是进行转换的源代码[C#]

 

using System;

 

using System.Drawing;

 

using System.Collections;

 

using System.ComponentModel;

 

using System.Windows.Forms;

 

using System.Data;

 

 

namespace  WordToHtml

 

{

 

     /// <summary>

 

     /// WordToHtml 的摘要说明。

 

     /// </summary>

 

     public class Form1 : System.Windows.Forms.Form

 

     {

 

         private System.Windows.Forms.Button btnWordToHtml;

 

         /// <summary>

 

         /// 必需的设计器变量。

 

         /// </summary>

 

         private System.ComponentModel.Container components = null;

 

 

         public Form1()

 

         {

 

              //

 

              // Windows 窗体设计器支持所必需的

 

              //

 

              InitializeComponent();

 

 

              //

 

              // TODO: 在 InitializeComponent 调用后添加任何构造函数代码

 

              //

 

         }

 

 

         /// <summary>

 

         /// 清理所有正在使用的资源。

 

         /// </summary>

 

         protected override void Dispose( bool disposing )

 

         {

 

              if( disposing )

 

              {

 

                   if (components != null)

 

                   {

 

                       components.Dispose();

 

                   }

 

              }

 

              base.Dispose( disposing );

 

         }

 

 

         #region Windows 窗体设计器生成的代码

 

         /// <summary>

 

         /// 设计器支持所需的方法 - 不要使用代码编辑器修改

 

         /// 此方法的内容。

 

         /// </summary>

 

         private void InitializeComponent()

 

         {

 

              this.btnWordToHtml = new System.Windows.Forms.Button();

 

              this.SuspendLayout();

 

              //

 

              // btnWordToHtml

 

              //

 

              this.btnWordToHtml.Location = new System.Drawing.Point(144, 104);

 

              this.btnWordToHtml.Name = "btnWordToHtml";

 

              this.btnWordToHtml.TabIndex = 0;

 

              this.btnWordToHtml.Text = "WordToHtml";

 

              this.btnWordToHtml.Click += new System.EventHandler(this.btnWordToHtml_Click);

 

              //

 

              // Form1

 

              //

 

              this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);

 

              this.ClientSize = new System.Drawing.Size(344, 294);

 

              this.Controls.Add(this.btnWordToHtml);

 

              this.Name = "Form1";

 

              this.Text = "Form1";

 

              this.ResumeLayout(false);

 

 

         }

 

         #endregion

 

 

         /// <summary>

 

         /// 应用程序的主入口点。

 

         /// </summary>

 

         [STAThread]

 

         static void Main()

 

         {

 

              Application.Run(new Form1());

 

         }

 

 

         private void btnWordToHtml_Click(object sender, System.EventArgs e)

 

         {

 

            Word.ApplicationClass appClass = new Word.ApplicationClass();

 

            Type wordType = appClass.GetType();

 

            Word.Documents docs = appClass.Documents;

 

             //打开文件

 

              Type docsType = docs.GetType();

 

              object fileName = "C://程序人生.doc";

 

              Word.Document doc = (Word.Document)docsType.InvokeMember("Open",

 

System.Reflection.BindingFlags.InvokeMethod,null,docs,new Object[]{fileName,true,true});

 

              // 转换格式,另存为

 

              Type docType = doc.GetType();

 

              object saveFileName = "C://程序人生.html";

 

           docType.InvokeMember("SaveAs",System.Reflection.BindingFlags.InvokeMethod,null,

 

              doc,new object[]{saveFileName,Word.WdSaveFormat.wdFormatFilteredHTML});

 

         //如果是Microsoft Word 9.0 Object Library的写法,可能写成:

 

         //docType.InvokeMember("SaveAs", System.Reflection.BindingFlags.InvokeMethod, null,

 

         //doc, new object[]{saveFileName, Word.WdSaveFormat.wdFormatHTML});

 

 

         // 退出 Word

 

              wordType.InvokeMember("Quit", System.Reflection.BindingFlags.InvokeMethod, null, appClass, null);

 

         }

 

     }

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值