c++读取word文件
来源:互联网 发布:mac l2tp服务器未响应 编辑:程序博客网 时间:2024/05/17 08:47
c++读取word文件
1.在vs中新建一控制台程序,选支持MFC
2.右击项目->选择类向导->选择添加类型库中的MFC类
3.选择从文件中添加->选择你的word的类型库(就是添加MSWOR.OLB,列如我的office装在D盘,一般可以在D:\Office\Office15中找到”),选择完毕后,添加在本例中要用到_Application,Documents,_Document,Range这四个类,添加他们后按完成
4.接着我们可以在我们的头文件中看到刚添加进的类。
双击进入刚添加的头文件,将最上面一行的
*#import “你的MSWORD.OLB位置” no_namespace
替换为
*#import “你的MSWORD.OLB位置” no_namespace raw_interfaces_only \
rename(“FindText”,”_FindText”) \
rename(“Rectangle”,”_Rectangle”) \
rename(“ExitWindows”,”_ExitWindows”) *
5.进入你的main函数所在的cpp文件,加入头文件引用
#include"CApplication.h"#include"CDocument0.h"#include"CDocuments.h"#include"CRange.h"
6.在main函数中加入如下代码:
int nRetCode = 0; if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0)) { cerr << _T("Fatal Error: MFC initialization failed") << endl; nRetCode = 1; } else { if (CoInitialize(NULL) != S_OK) { AfxMessageBox(_T("初始化COM支持库失败!")); return -1; } CApplication wordApp; CDocuments docs; CDocument0 doc; CRange aRange; COleVariant vTrue((short)TRUE), vFalse((short)FALSE), vOpt((long)DISP_E_PARAMNOTFOUND, VT_ERROR); wordApp.CreateDispatch(_T("Word.Application"),NULL); docs=wordApp.get_Documents(); doc=docs.Open(COleVariant(_T("d:\\txt.doc")),vFalse,vTrue,vFalse,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt); aRange=doc.Range(vOpt,vOpt); AfxMessageBox(aRange.get_Text());//这里GetText得到的就是word文件的纯文本了,GetText()输出的是Cstring格式。(下一篇讲cstring转char) doc.Close(vOpt,vOpt,vOpt); wordApp.Quit(vOpt,vOpt,vOpt); CoUninitialize(); } return nRetCode;
7.编译:
出现错误:
我们把出错的地方加上int。
再次编译,出错:
我们在变量前加int标识符。
编译,通过了,运行:
通过排查发现是 CoUninitialize();
这个语句出错了,查资料表明:
CoUninitialize()关闭当前线程的COM库,卸载线程加载的所有dll,释放任何其他的资源,关闭在线程上维护所有的RPC连接。
尝试将CoUninitialize()放在程序结束那。
运行通过,没有报错。
参考:http://www.cnblogs.com/zhangyin/archive/2007/03/04/663345.html
- JAVA读取word文件
- java读取word文件
- 读取word excel 文件
- Java读取Word文件
- 读取word excel 文件
- Android读取word文件
- c++读取word文件
- Android读取word文件
- C#读取Word文件
- Java读取word文件
- C# 读取word文件文本
- Android中读取word文件
- BLOB读取写入word文件
- Java POI 读取word文件
- Java POI 读取word文件
- java读取word-excel-ppt文件
- word文件保存到数据库,读取
- andrid 读取Word文件 (无格式)
- vim+cscope+ctags打造属于自己的IDE
- 关于算法练习1.1中的中参数传递方式思考
- 如何用堆栈实现后序遍历的非递归程序
- Sizeof与Strlen的区别与联系
- uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型 - 大总结,看完全明白了
- c++读取word文件
- 利用textField的代理和手势来进行取消第一响应的事件来提高用户体验!
- 多图真相:Adobe Dreamweaver CC 2014.1来了-体验卓越PSD提取和诸多精彩云功能!
- [Leetcode]Excel Sheet Column Number
- 判断大小端模式
- uva11300
- 编程高手无捷径
- POJ2538 还能再水一点吗...
- grep 使用, 部分大小写查询多个 字符