0

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

我需要知道有多少单词,如果可能的话,制作一个单词长度数组以及每个单词有多少,这样 1、2、3 个字母的单词以后会较少受到代码的关注。

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

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

提前致谢

4

1 回答 1

3

你有几个选择 -

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

选项(2)似乎是我的方法。

于 2013-09-02T18:22:36.500 回答