c# 读数据库利用模板书签写word文件

通过Visual Studio创建C# Windows控制台应用程序,添加对Microsoft Word对象库的引用,实现从数据库读取数据并利用模板书签写入Word文件。教程详细描述了创建项目、引用Word库和数据处理的步骤。
摘要由CSDN通过智能技术生成

(刚完成的,转载请注明出处,谢谢合作!)

要利用 Visual C# .NET 的自动化功能创建新的 Word 文档,请执行以下步骤:

    1. 启动 Microsoft Visual Studio 2010。在文件菜单上,单击新建,然后单击项目。在项目类型下,单击 Visual C# 项目,然后单击模板下的 Windows 控制台应用程序。
    2. 添加对 Microsoft Word 对象库的引用。为此,请按照下列步骤操作:
      1. 首先嘛,必须要有微软的word(开始在WPS上弄,不了解,费劲)
      2. 在项目菜单上,单击添加引用。
      3. 在 COM 选项卡上,找到 Microsoft Word 对象库,然后单击选择。(MIcrosoft Word 11.0 Object Library)类型库原理(8.3)
      4. 在添加引用对话框中单击确定,接受您的选择。如果系统提示您为选定的库生成包装,请单击是。
说明:write类,封装的是各种操作word的方法;mainclass类实现与数据库建立连接等
using System.Linq;
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Office.Interop.Word;
using Word = Microsoft.Office.Interop.Word;
using System.Reflection;
using System.Web;
using System.Data.SqlClient;
using System.Data;
using System.Text.RegularExpressions;

namespace last  //这边需要换成自己的命名空间名
{
    class Write
    {
        object oMissing = System.Reflection.Missing.Value;
        //object oEndOfDoc = "\\endofdoc"; /* \endofdoc is a predefined bookmark */
        //object oTemplate = "F:\\程序\\C#\\模板word\\word\\模板1.doc";
        Word._Application oWord;
        Word._Document oDoc;
        //通过模板创建文档
        public void start(object filepath)
        {
            //Start Word and create a new document.
            killWinWordProcess();
            oWord = new Word.Application();
            oWord.Visible = true;//测试看效果为true,后台执行false
            oDoc = oWord.Documents.Add(ref filepath, ref oMissing,
    ref oMissing, ref oMissing);
        }
        //在书签处插入值
        public bool InsertValue(string bookmark, string value)
        {
            object bkObj = bookmark;
            if (oWord.ActiveDocument.Bookmarks.Exists(bookmark))
            {
                oWord.ActiveDocument.Bookmarks.get_Item(ref bkObj).Select();
                oWord.Selection.TypeText(value);
                return true;
            }
            return false;
        }
        // 杀掉winword.exe进程
        public void killWinWordProcess()
        {
            System.Diagnostics.Process[] processes = System.Diagnostics.Process.GetProcessesByName("WINWORD");
            foreach (System.Diagnostics.Process process in processes)
            {
                bool b = process.MainWindowTitle =&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值