在C#中读取word文档

时间:2011-02-27 01:54:35

标签: c# asp.net ms-word ms-office

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

有没有办法可以单独使用办公工具并阅读文档docs(2003和2007)

3 个答案:

答案 0 :(得分:4)

不幸的是,没有很好的免费选项来读取.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

答案 1 :(得分:1)

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

答案 2 :(得分:0)

仅.docx文件的另一个免费选项是OpenXML SDK

对于.doc和.docx文件,如果文件大小相对较小,则可以使用GemBox.Document的免费版本,否则,您需要使用其专业版本。
您可以用相同的方式open and read使用任何Word格式,例如:

<div style="font-size:xx-small;color:white;"></div>