如何读取.doc文件的内容呢?

如何读取.doc文件的内容呢?,第1张

这个我们一般都是用

QuickOffice

之类的

办公软件

打开的,还没有真正读取里面的内容显示的,doc文件中也不光是文字啊,还有图片之类的啊!

1.

可以通过流将图片或word转化为二进制数据,然后存入,选择使用一种动态语言即可轻松完成.

但是,由于此类文件较大,数据读取和写入都将非常缓慢,所以不提倡这样.

建议使用图片和文档的路径保存在数据库中.

2.

用StreamReader读取一个doc文件,转成byte[],写入数据库的image类型字段

读出来的时候一样,把流写成doc文件就行了

3.

SQL

Server

2000

可以使用

image

类型,最大可存储

2^31-1

个字节

2GB。

或者使用

binary

varbinary

类型,最大可存储

8,000

个字节。

未来的SQL

Server版本将删除

image

类型,所以

SQL

Server

2005

推荐使用

varbinary(max)

类型,最大可存储

2GB。

基本步骤

(1)创建)一个 MFC 的程序工程。

注意:在VC中对WORD进行 *** 作需要在MFC AppWizard - Step 2 of

4中的Automaiton选项上打上勾。

(2)Ctrl+W 执行 ClassWizard(本文按照 VC6 *** 作,示例程序是在VC6 下编写测试的)。

(3)Add Class...\From a type Library... 在 Office

目录中,找到想使用的类型库。(我使用的是 Office2003,其Word 的类型库文件,保存在 E:\Program

Files\Microsoft Office\Office12\MSWOR.OLB)。

(4)选择类型库文件后,在d出的对话窗中继续选择要添加的类。具体选择什么类,要看你将来在程序中打算调用什么功能。当然,也可以不用考虑这么多,用鼠标和Shift键配合,全部选择也可以。

(5)初始化COM。方法一,找到App的InitInstance()函数,在其中添加

AfxOleInit()函数的调用;方法二,在需要调用COM功能的地方 CoInitialize(NULL),调用完毕后

CoUninitialize()。

(6)在你需要调用 Office 功能函数的 cpp 文件中

    

#include

<atlbase.h>  //

为了方便 *** 作 VARIANT 类型变量,使用 CComVariant 模板类

    

#include "文件名.h"   //

具体的头文件名,是由装载类型库的文件名决定的,如MSWORD。

示例程序:

//word应用程序

  _Application app

  //初始化连接

  app.CreateDispatch("word.Application")

  Documents doc

  CComVariant

a(_T(strWord)),b(false),c(0),d(true),aa(0),bb(1)

  _Document doc1

  doc.AttachDispatch(app.GetDocuments())

  doc1.AttachDispatch(doc.Add(&a,&b,&c,&d))

  Range range

  //求出文档的所选区域

  range=doc1.GetContent()//取出文件内容

  str=range.GetText()

  m_richedit.SetWindowText(str)

  //关闭

  app.Quit(&b,&c,&c)

  //释放环境

  app.ReleaseDispatch()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11904867.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存