如何利用c++读取.doc文档

学习c++不是很久,昨天逛论坛,偶遇这样一个题目,遂在网上查找相关内容。

现总结下我的经验。

首先建立一个win32控制台程序,注意如图要选择支持MFC选项。

然后选择视图->类向导,点击Add Class;选择Import from Type Library;将Office安装目录下的MSWORD.OLB打开,会出现如下对话框:

将_Application,Documents,_Document,Range四个类导入。

在主函数的else语句中添加如下代码即可实现。

_Application  wordApp; //在对象继承结构中是最顶层的对象,可以通过它的方法访问别的工作类型的对象(本例主要是word) 
Documents  docs;  //代表所有打开的文档对象
_Document  doc; 
Range  aRange;  
       
COleVariant  vTrue((short)TRUE),   
vFalse((short)FALSE),   
vOpt((long)DISP_E_PARAMNOTFOUND,  VT_ERROR);  
       
wordApp.CreateDispatch("Word.Application",NULL); 
wordApp.SetVisible(FALSE); 
docs=wordApp.GetDocuments();
doc=docs.Open(COleVariant(filename...),vFalse,vTrue,vFalse,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt);
aRange=doc.Range(vOpt,vOpt);

string str(aRange.GetText());
cout<<str<<endl;
doc.Close(vOpt,vOpt,vOpt); 
wordApp.Quit(vOpt,vOpt,vOpt);
CoUninitialize(); //关闭COM对象库,释放资源

原文地址:https://www.cnblogs.com/wxfasdic/p/1438405.html