计算上传的word文件中的单词

时间:2013-09-02 04:55:44

标签: asp.net asp-classic ms-word

有没有办法可以计算经典asp或asp.net中word文件(所有版本)中的单词?

我需要的是知道有多少单词,如果可能的话,可以制作一个单词长度数组以及每个单词的数量,所以1,2,3个字母的单词后来会得到较少的关注。

我正在考虑使用FSO或类似的东西,但这不适用于docx

如果需要,我可以使用aspupload或任何其他对象上传文件。如果有一个可以购买的对象将上传和计算单词我没有购买它的问题

提前致谢

1 个答案:

答案 0 :(得分:3)

您有多种选择 -

  1. 如果您可以在服务器上安装办公室并且不要求这是一个快速解决方案,您可以尝试Word Interop。见Word count using Microsoft.Office.Interop.Word。一个类似的选择是安装OpenOffice并使用它,从来没有这样做过。
  2. 您可以使用IFilter界面(http://msdn.microsoft.com/en-us/library/ms691105(v=vs.85).aspx)。 Microsoft已经实现了逻辑以获取Word文件并允许您访问内部文本,因此您所要做的就是计算单词。请查看此处的第一个答案Are IFilters necessary to index full text documents using Lucene.NET及其提供的链接或How to extract text from MS office documents in C#。您还可以查看http://blogs.msdn.com/b/jasonz/archive/2009/08/31/sample-parsing-content-in-c-using-ifilter.aspx
  3. 您可以使用第三方工具,我知道有一些工具,但我对它们中的任何一个都不熟悉。例如,请参阅http://www.aspose.com/.net/word-component.aspx
  4. 如果您真的不需要支持所有单词版本,那么有多种方法可以使用Word 2007+文件 - 例如 - 官方openXML或开源docx
  5. 选项(2)似乎是找我的方式。