微软在“C”中的文字解析器

我想知道从Microsoft word(.doc和.docx)文档中解析和获取文本内容的过程。 使用的编程语言应该是普通的“C”(应该是gcc)。

是否有任何图书馆已经完成这项工作,

扩展:我可以使用相同的过程来解析Microsoft power point文件中的文本吗?

Microsoft Word文档是一个巨大的野兽 – 你绝对不想自己编写这些代码。 考虑使用现有的免费Word库,如antiword或wvWare 。

我不知道存在的库,但格式规范可以从Microsoft免费获得,并承诺不会起诉你使用它们。

在Windows上,让word完成工作并与COM对象接口,在linux上,工作是在antiword中完成的。 或者,您可以使用UNO对象模型在任何平台上自动化OpenOffice.org 。

如果您愿意在C中使用COM接口,可以使用自Windows 2000以来内置于每个Windows版本的IFilter接口。您可以使用它从任何Office文档中提取文本(Word,Excel,等),PDF文件或安装了IFilter支持的任何文件类型。

几年前我写了一篇关于它的博客文章 。 这都是C ++,但您可以使用C语言中的COM对象。