c#编程实现word 文档如何导入SQL Server数据库表中

操作WORD配置说明

  引入:Word的对象库文件“MSWORD.OLB”(word 2000为MSWORD9.OLB)

  1.运行Dcomcnfg.exe

  2.组件服务――计算机――我的电脑――DCOM配置――找到microsoft word 文档

  3.点击属性

  4.选择“安全性”

  5.选定“使用自定义访问权限”和“使用自定义启动权限”

  6.分别编辑权限,添加Everyone(ASPNET,VS Developers,Debugger User)

  7.选择“身份标识”,在选定“交互式用户” 即可

  8.在Web.config里加 identity impersonate="true"/

  C#:

  ASP.NET操作Word文档一直是一个大家比较关心的话题,其实在ASP.NET里操作Word文档一点也不难,大家只需按本文提示,就能轻轻松松操作Word文档!

  一、准备工作

  首先请确认服务端已经安装了Office Word(以下将以Office XP为例),操作系统为win2000或XP,并且已配置好.NET的运行环境及安装VS.NET C#开发环境后,我们就可以打开VS.NET,并新建一个Visual C#项目ASP.NET Web应用程序,位置为“”。(如图一)

  二、引用Word对象库文件

  要操作Word,我们就需要Word的对象库文件“MSWORD.OLB”(word 2000为MSWORD9.OLB),通常安装了Office Word后,你就可以在office安装目录的Office10文件夹下面找到这个文件,当我们将这个文件引入到项目后,我们就可以在源码中使用各种操作函数来操作Word。具体做法是打开菜单栏中的项目添加引用浏览,在打开的“选择组件”对话框中找到MSWORD.OLB后按确定即可引入此对象库文件,vs.net将会自动将库文件转化为DLL组件,这样我们只要在源码中创建该组件对象即可达到操作Word的目的!

  三、Webform1.aspx.cs代码

  完成添加引用后,MSWORD.OLB已经转化为相关DLL文件并放置于项目的BIN目录下了,这样我们只需在源码中创建该对象,并使用word库文件内置的操作函数即可轻松实现操作Word,Webform1.aspx.cs源码请参见

  五、web.config设置

  web.config文件还需添加一句 identity impersonate="true"/以启用模拟身份,因为默认ASPNET这个用户是没有权限访问Word.ApplicationClass(),当启用模拟身份后所有页面将会使用匿名Internet用户帐户(IUSR_machinename)这个用户名的权限执行,这样我们就能成功访问Word.ApplicationClass()并在ASP.NET中操作Word!


//传文档所在路径 返回文档内容

public string Doc2Text(string docFileName)

{

//实例化COM

Microsoft.Office.Interop.Word.ApplicationClass wordApp = new Microsoft.Office.Interop.Word.ApplicationClass();

object fileobj = docFileName;

object nullobj = System.Reflection.Missing.Value;

//打开指定文件(不同版本的COM参数个数有差异,一般而言除第一个外都用nullobj就行了)

Microsoft.Office.Interop.Word.Document doc = wordApp.Documents.Open(ref fileobj, ref nullobj, ref nullobj,

ref nullobj, ref nullobj, ref nullobj,

ref nullobj, ref nullobj, ref nullobj,

ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj

);

//取得doc文件中的文本

string outText = doc.Content.Text;

//关闭文件

doc.Close(ref nullobj, ref nullobj, ref nullobj);

//关闭COM

wordApp.Quit(ref nullobj, ref nullobj, ref nullobj);

//返回

return outText;

}

  当然 在读取的时候会有损坏的文件 和被加密的文件等问题 总之C#和office的兼容性不太好

  别忘了要引用word的dll

  引用文件夹 右键添加引用 在组件里找Microsoft.Office.Interop.Word

  读出了word文档再把它写入sql server数据库就可以了   

最新内容请见作者的GitHub页:http://qaseven.github.io/

   

时间: 2024-09-11 00:41:21

c#编程实现word 文档如何导入SQL Server数据库表中的相关文章

将多个Word文档页面内容缩印到一个页面中的方法

  将多个Word文档页面内容缩印到一个页面中的方法          在打印Word文档时,为了节省纸张,我们可能希望在一张纸上打印多个页面的内容.例如,我们可以将每两页的用户手册打印到一张A4纸中,为了实现这一功能(如图1所示),可按照如下步骤进行. 图1 一张纸上打印多个页面 1.在打开的Word文档中,单击[Office按钮],执行下拉菜单中的[打印]命令(如图2所示),打开"打印"对话框. 图2 执行下拉菜单中的[打印]命令 2.在对话框的"缩放"选项区域

请问一下asp.net mvc3怎么实现将上传的excel表格的数据导入sql server数据库?

问题描述 请问一下asp.net mvc3怎么实现将上传的excel表格的数据导入sql server数据库? 现在有一个项目,是要求用户上传一个excel文件,系统后台实现将上传的数据写到数据库相应的表中~请大声多多指教 解决方案 asp.net:上传excel表格到SQL Server数据库asp.net 将EXCEL表格数据导入到SQL Server数据库asp.net中Excel导入sql server数据库---------------------- 解决方案二: 这问题太简单了...

极限挑战—C#100万条数据导入SQL SERVER数据库仅用4秒 (附源码)

原文:极限挑战-C#100万条数据导入SQL SERVER数据库仅用4秒 (附源码)     实际工作中有时候需要把大量数据导入数据库,然后用于各种程序计算,本实验将使用5中方法完成这个过程,并详细记录各种方法所耗费的时间.     本实验中所用到工具为VS2008和SQL SERVER 2000.SQL SERVER 2008,分别使用5中方法将100万条数据导入SQL 2000与SQL 2008中,实验环境是DELL 2850双2.0GCPU,2G内存的服务器.感兴趣的朋友可以下载源代码自己

如何将含有表格的word文档将其格式存储到mysql中,然后在jsp页面显示

问题描述 最近遇到一个问题,就是将一个含EXECL表格的word文档存到mysql中,但是再从mysql中读到页面是就没有表格了,请问如何将word按原来的格式在页面上显示?请高手指点,最好给出具体实例 解决方案 解决方案二:关注中解决方案三:mysql可以存储二进制文件的.解决方案四:楼主解决了这个问题没有?我也恰好碰到这样的需求.解决方案五:现在没有时间解决,等过后一段时间,花一个星期来试验,看来最后只能靠自已解决方案六:存储不是大问题,问题是怎么在页面显示出包含excel的word文档.你

Excel表数据导入Sql Server数据库中两种办法

方法一,程序导入 C#.ASP.NET中将Excel表中的数据导入到Sql Server数据库中对应的表中. 这里我们将E:\test.xls中Sheet1表中的数据导入到test数据库中的my_test表中. 软件:VS2005,SQL Server2000, test.xls中Sheet1表中有三个字段,编号.名称.备注.具体内容如下图. 1.首先,我们要先在test数据库中新建一个my_test表,该表具有三个字段 tid int类型, tname nvarchar类型, tt nvarc

C#中编程读取Word文档和Pdf的内容

最近项目需要实现一个功能:读取doc,docx,pdf文件内容.在网上搜罗许久,还是发现有些好东西可以直接拿来使用,要不然就得自己发明轮子了.接下来我就简单介绍了用了哪些组件来实现这个功能的. Doc文档:Microsoft Word 14.0 Object Library (GAC对象,调用前需要安装word.安装的word版本不同,COM的版本号也会不同) Docx文档:Microsoft Word 14.0 Object Library (GAC对象,调用前需要安装word.安装的word

PowerDesigner中如何导入SQL Server数据库_mssql2005

再用PD建表完成后导成SQL脚本然后在SQL Server中运行后生成数据库后,就想到,可不可以将直接将数据库的内容生成PD文档?经过上网查,当然可以的. 要将SQL Server中的数据库导入到PD中,首先需要建立一个数据库的链接,然后进行逆向工程的操作.下面开始操作. 第一步:打开数据库菜单,选择"Configure Connections" 第二步:创建新的ODBC链接 第三步:选择系统数据源 第四步:选择需要的数据库 第五步:"完成" 第六步:命名数据源,并

vs2010的gridview模板列加上了fileupload控件。选择word文档等上传到数据库,具体代码怎么写,求大神指教!!!谢谢!!!

问题描述 解决方案 本帖最后由 lailai333 于 2015-04-21 16:05:20 编辑

C# Excel 数据导入sql server 数据库出错。请帮忙

问题描述 publicpartialclassInputExcelData:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){}protectedvoidbtnInputData_Click(objectsender,EventArgse){///读取数据,并显示在GridView控件中gvData.DataSource=InputExcelFile(fuFile.PostedFile.FileName);gvD