#c# #visual-studio-2010 #ms-word #automation #ms-office
#c# #visual-studio-2010 #ms-word #автоматизация #ms-office
Вопрос:
Мне нужен скрипт (или другой код, C # и т.д.), Который будет извлекать каждый абзац / предложение, содержащее определенное слово в наборе документов Word 2007, и перемещать их в новый документ Word, записывая имя файла исходного (исходного) документа, из которого они были извлечены.
Комментарии:
1. Документы в
docx
формате?2. Вы можете использовать Office automation или Aspose. Слова.
3. Да, это документ docx (2007).
Ответ №1:
Как насчет использования индексатора документов, такого как dtSearch, Для индексации ваших документов (word, pdf и т. Д.), А Затем использовать их API для выполнения уникальных поисковых запросов таким образом. Из того, что звучит, это может быть самым быстрым способом добиться этого. Предоставленные индексаторы, такие как dtSearch, стоят денег (не так много), но иногда это может стоить затрат по сравнению с часами, которые вы потратите, пытаясь написать свой собственный код, чтобы сделать то же самое.
Некоторые статьи, которые я нашел, которые могут привести вас в правильном направлении, если вы не хотите использовать индексатор:
и
Редактировать Чтобы найти предложение, содержащее определенное слово, вы можете попробовать эту ссылку http://msdn.microsoft.com/en-us/library/bb546163.aspx
Комментарии:
1. Спасибо, Джейсон. Самая сложная часть — это захват предложения / абзаца, который содержит слово. Как вы это делаете программно?
2. Привет, Алекс, посмотри, поможет ли тебе в этом эта ссылка: msdn.microsoft.com/en-us/library/bb546163.aspx
3. Как раз то, что мне было нужно! Спасибо, Джейсон 🙂
Ответ №2:
Это может дать вам начало: http://msdn.microsoft.com/en-us/library/ff834910.aspx
Ответ №3:
Office Interop — это вариант, но будьте осторожны: он не поддерживается MS в серверных сценариях (например ASP.NET или служба Windows или аналогичная) — см. http://support.microsoft.com/default.aspx?scid=kb ;RU-США;q257757#kb2 !
Вам нужно будет использовать некоторую библиотеку для достижения желаемого:
- MS предоставляет OpenXML SDK версии 2.0 (бесплатно)
- Aspose.Слова (коммерческие)