Мне нужно извлечь метаданные из большого количества (мой небольшой рабочий образец насчитывает сотни, общее количество, вероятно, будет тысячи) файлов Microsoft Office, в основном Word.
Эти файлы Версии Word переходят с Word 2.0 наWord 2007.
Я должен сделать это в .net 3.5 (используя c #), и это локальное приложение winforms.
Я могу извлекать метаданные из самых последних с помощью OLE Automation (DsoFile).длл), я думаю.Я успешно справился с некоторыми из них.
Проблема в том, что старые форматы не поддерживаются DsoFile.Вероятно, они не используют OLE.
Я много гуглил и обнаружил, что лучший (вероятно, единственный) способ получить нужные мне данные - это использование анти-слова (http://www.winfield.demon.nl/). С анти-словом я могу вызвать)он обрабатывает и собирает выходные данные. Он может извлечь некоторые данные, но не все, что мне нужно. Пример: antiword дает мне только одну из сохраненных дат, и мне нужно две из них.
Есть также wvware, но ядумаю, это только для linux.
Другой вариант - gnu libextractor, но я не могу найти способ использовать его в .net
. Взаимодействие с Office было бы отчаянным последним средством.Я проверил этот вариант, но, полагаю, он не подходит для обработки огромного количества файлов с достойной производительностью.
Может кто-нибудь помочь? Если вам нужно больше данных, просто спросите.
Извините за мой английский, я не являюсь носителем языка.