在C#中读取word文档

我想在服务器中读取word文档(doc和docx)。 服务器没有安装办公室,因此我不能使用com对象,也没有商业软件。

有没有办法可以单独使用办公工具并阅读docs这个词(2003年和2007年)

不幸的是,没有很好的免费选项来读取.doc和.docx文件。 即使商业选择稀少,价格也合理,但有很好的选择。

对于读取.doc文件,我所知道的唯一免费选项是POI for Java,您可以使用IKVM在.NET中运行。 但是,在POI的SVN存储库的实验分支中支持Word,所以我不知道它的工作情况。

http://poi.apache.org/

http://www.ikvm.net/

如果您只想从.doc文件中获取文本而不关心格式化,可以通过pinvoke使用IFilter Win32接口。

要读取.docx文件,您可以使用Microsoft Office Open XML SDK。 不要让“SDK”欺骗你,这对于直接处理XML是一个非常轻松的抽象。 这几乎和使用一样痛苦。

http://www.microsoft.com/downloads/en/details.aspx?FamilyId=C6E744E5-36E9-45F5-8D8C-331DF206E0D0&displaylang=en

对于.docx,您的免费选项是DocX 。 非常先进且易于使用。 对于doc,我没见过免费替代品。