如何使用 MFC 阅读 MS Word 文档?

Posted

技术标签:

【中文标题】如何使用 MFC 阅读 MS Word 文档?【英文标题】:How to read MS Word documents using MFC? 【发布时间】:2010-07-21 05:50:16 【问题描述】:

我正在使用 VC++/MFC 进行项目,我需要从 Word 文档中读取数据。我用谷歌搜索,但找不到任何可行的解决方案。如何开始使用此 MFC?任何帮助将不胜感激!

更新:可以在 MS 支持网站和 Google 上找到的信息确实过时了,我需要使用 Word 2003 或 2007。

【问题讨论】:

你要读取什么样的数据?元数据、文本、图像……? @0xA3 ,只有普通文本,包括它们的样式信息。似乎没有那么容易。:( 相关:***.com/questions/145573/… 【参考方案1】:

您可能需要考虑将Word Automation Class 用于 VC++/MFC,它基于Microsoft Excel Automation Class(Excel 97 开发人员工具包中的 AutoXL 端口)。它应该适用于所有版本的 MS Word(包括 2003/2007)。

【讨论】:

感谢您提供的好资源,它有很大帮助。【参考方案2】:

您可以使用 OLE 自动化直接与 ms word 对话:http://support.microsoft.com/kb/196776

虽然这可能不是一个可行的解决方案,因为必须安装 word。

【讨论】:

【参考方案3】:

这里的一个挑战是读取格式信息,读取 Table 内的测试等。如果是纯流读取,它会简单得多。

我在我的一个项目中所做的是定义书签并读取书签中的数据。这样我就不必担心文档中的布局。但是,要使其发挥作用,您的 Word 文档应在准备时牢记这一点。没有任何通用的word文档可以这样阅读。

在我的例子中,它是一个申请表,所以我的任务很简单,因为我是提供word文档供用户填写数据的人。

【讨论】:

这确实是一个重点,我现在卡在这个问题上。我正在尝试在 Otaku 提到的 Word 自动化类中找到处理它的函数。

以上是关于如何使用 MFC 阅读 MS Word 文档?的主要内容,如果未能解决你的问题,请参考以下文章

MFC 多文档 如何打开同一个doc的多个view

mfc单文档如何去掉最小化 还原

如何在 MFC 中支持多种文档类型,例如 MS Office 应用程序或 Visual Studio

在 C# 或 C++ 中将 ms word 文档转换为 svg

如何利用ASP生成WORD文档

如何使用VBA循环访问MS Word中的每个字母?