【问题标题】:Code to read Word docs阅读 Word 文档的代码
【发布时间】:2011-12-20 08:03:11
【问题描述】:

我需要一个脚本(或其他代码、C# 等),它将获取一组 Word 2007 文档中包含特定单词的每个段落/句子,并将它们移动到新的 Word 文档中,记录原始文件的文件名(来源)提取它们的文件。

【问题讨论】:

  • 文件是docx格式吗?
  • 您可以使用 Office 自动化或 Aspose.Words。
  • 是的,这是一个 docx (2007) 文档。

标签: c# visual-studio-2010 ms-word automation ms-office


【解决方案1】:

如何使用文档索引器(例如 dtSearch)来索引您的文档(word、pdf 等),然后利用他们的 API 以这种方式进行您的独特搜索。从听起来这可能是实现这一目标的最快方法。像 dtSearch 这样的索引器需要花钱(不是很多),但有时与您尝试编写自己的代码来做同样的事情所花费的时间相比,这可能是值得的。

如果您不想使用索引器,我发现的一些文章可能会引导您走向正确的方向:

http://omegacoder.com/?p=555

http://weblogs.asp.net/guystarbuck/archive/2008/05/13/automated-search-and-replace-in-multiple-word-2007-documents-with-c.aspx

编辑 要查找包含特定单词的句子,您可以尝试此链接http://msdn.microsoft.com/en-us/library/bb546163.aspx

【讨论】:

  • 谢谢,杰森。最棘手的部分是抓取包含该单词的句子/段落。你如何以编程方式做到这一点?
  • 嗨,Alex,看看这个链接是否对你有帮助:msdn.microsoft.com/en-us/library/bb546163.aspx
  • 正是我需要的!谢谢,杰森 :)
【解决方案2】:

【讨论】:

    【解决方案3】:

    Office Interop 是一个选项,但请注意:在类似服务器的场景(如 ASP.NET 或 Windows 服务或类似情况)中,MS不支持 - 请参阅 http://support.microsoft.com/default.aspx?scid=kb;EN-US;q257757#kb2

    你需要使用一些库来实现你想要的:

    【讨论】:

      猜你喜欢
      • 2018-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多