.NET操作Word可以用using Word来实现。基本上,vs.net将会自动将 库文件转化为DLL组件,这样我们只要在源码中创建该组件对象即可达到操作Word的目的。
要实现,我们就需要Word的对象库文件“MSWORD.OLB”(word 2000为MSWORD9.OLB),通常安装了Office Word后,你就可以在office安装目录的Office10文件夹下面找到这个文件,当我们将这个文件引入到项目后,我们就可以在源码中使用各种操作函数来操作Word。具体做法是打开菜单栏中的项目>添加引用>浏览,在打开的“选择组件”对话框中找到MSWORD.OLB后按确定即可引入此对象库文件。
在CS代码文件中对命名空间的应用,如:using Word;.NET操作Word范例如下:
- using System;
- using System.Drawing;
- using System.Collections;
- using System.ComponentModel;
- using System.Windows.Forms;
- using Word;
- namespace ExamSecure
- {
- ///
- /// ItemToDoc 的摘要说明。
- ///
- public class ItemToDoc : System.Windows.Forms.Form
- {
- object strFileName;
- Object Nothing;
- Word.ApplicationClass myWordApp=new Word.ApplicationClass();
- Word.Document myWordDoc;
- string strContent="";
- private System.ComponentModel.Container components = null;
- public ItemToDoc()
- {
- //
- // Windows 窗体设计器支持所必需的
- //
- InitializeComponent();
- //
- // TODO: 在 InitializeComponent 调用后添加任何构造函数代码
- //
- }
- [STAThread]
- static void Main()
- {
- System.Windows.Forms.Application.Run(new ItemToDoc());
- }
- ///
- /// 清理所有正在使用的资源。
- ///
- protected override void Dispose( bool disposing )
- {
- if( disposing )
- {
- if(components != null)
- {
- components.Dispose();
- }
- }
- base.Dispose( disposing );
- }
- #region Windows Form Designer generated code
- ///
- /// 设计器支持所需的方法 - 不要使用代码编辑器修改
- /// 此方法的内容。
- ///
- private void InitializeComponent()
- {
- //
- // ItemToDoc
- //
- this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
- this.ClientSize = new System.Drawing.Size(292, 273);
- this.Name = "ItemToDoc";
- this.Text = "ItemToDoc";
- this.Load += new System.EventHandler(this.ItemToDoc_Load);
- }
- #endregion
- private void ItemToDoc_Load(object sender, System.EventArgs e)
- {
- WriteFile();
- }
- private void WriteFile()
- {
- strFileName=System.Windows.Forms.Application.StartupPath+"\\试题库【"+GetRandomString()+"】.doc";
- Object Nothing=System.Reflection.Missing.Value;
- myWordDoc=myWordApp.Documents.Add(ref Nothing,ref Nothing,ref Nothing,ref Nothing);
- #region 将数据库中读取得数据写入到word文件中
- strContent="试题库\n\n\r";
- WriteFile(strContent);
- strContent="试题库";
- WriteFile(strContent);
- #endregion
- //将WordDoc文档对象的内容保存为DOC文档
- myWordDoc.SaveAs(ref strFileName,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing,ref Nothing);
- //关闭WordDoc文档对象
- myWordDoc.Close(ref Nothing, ref Nothing, ref Nothing);
- //关闭WordApp组件对象
- myWordApp.Quit(ref Nothing, ref Nothing, ref Nothing);
- }
- ///
- /// 获取一个随即字符串
- ///
- ///
- private string GetRandomString()
- {
- DateTime iNow=DateTime.Now;
- string strDate=iNow.ToString("yyyyMMddHHmmffff");
- Random ran=new Random();
- int iRan=Convert.ToInt32(10000*ran.NextDouble());
- string strRan=iRan.ToString();
- //位数不足则补0
- int iRanlen=strRan.Length;
- for(int i=0;i<4-iRanlen;i++)
- {
- strRan="0"+strRan;
- }
- return strDate+strRan;
- }
- ///
- /// 将字符串写入到Word文件中
- ///
- /// 要写入的字符串
- private void WriteFile(string str)
- {
- myWordDoc.Paragraphs.Last.Range.Text=str;
- }
- }
- }
以上就是.NET操作Word的实现代码。
【编辑推荐】