Автоматизация: как автоматизировать преобразование .doc к .docx?

У меня есть набор .doc файлов в папке, которую я должен преобразовать в .docx.

Вручную преобразовать .doc в .docx довольно просто:

  1. Откройте .doc в Word 2007
  2. Нажмите на Save As...
  3. Сохраните его как .docx

Однако выполнение этого для сотен файлов определенно не является забавой. =p

Как Вы автоматизировали бы это?

9
задан sivabudh 8 March 2010 в 22:54
поделиться

5 ответов

Автоматизация Word.

Если вы используете .NET, добавьте эталонную сборку Microsoft.Office.Interop.Word (убедитесь, что это версия 12 - эквивалент Word 2007, чтобы вы могли достичь вышеуказанного) в свой проект и используйте ее, чтобы автоматизировать приложение Word для делайте именно то, что вы хотите сделать выше. Псевдокод

  • Создайте объект приложения
  • Используйте объект приложения, чтобы открыть документ (указав ему имя файла)
  • Используйте объект приложения для выполнения SaveAs, предоставив ему формат и имя выходного файла
  • Закройте текущий документ
  • Выполните описанное выше, пока не закончите со всеми документами.
  • Служебный код для освобождения объектов Word или Doc

Вы можете найти множество примеров в Google, просто найдите Word Automation на C # или что-то в этом роде по этой линии.

4
ответ дан 4 December 2019 в 07:35
поделиться

Нет необходимости автоматизировать Word, который является довольно медленным и нестабильным из-за всплывающих сообщений, или использовать Microsoft Office File Converter (ofc.exe), который имеет излишне сложный пользовательский интерфейс.

Самый простой и быстрый способ - установить либо Office 2007, либо загрузить и установить пакет обеспечения совместимости от Microsoft (если это еще не сделано). Затем вы можете легко преобразовать из .doc в .docx, используя следующую команду:

"C:\Program Files\Microsoft Office\Office12\wordconv.exe" -oice -nme <input file> <output file>

где <входной файл> и <выходной файл> должны быть полными путями.

Команду можно легко применить к нескольким документам, используя для :

for %F in (*.doc) do "C:\Program Files\Microsoft Office\Office12\wordconv.exe" -oice -nme "%F" "%Fx"
18
ответ дан 4 December 2019 в 07:35
поделиться

WD2000: Как использовать (OLE) автоматизацию с Word . Для Word 2000, но модель все еще применима.

0
ответ дан 4 December 2019 в 07:35
поделиться

Самый простой способ - использовать командную строку Конвертер файлов Office . Просто запустите

ofc

, и волшебство произойдет.

7
ответ дан 4 December 2019 в 07:35
поделиться
0
ответ дан 4 December 2019 в 07:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: