повторно упакованные файлы docx не открываются в Word


29

Я успешно разархивировал и исследовал внутреннюю часть файла .docx, но я не могу заставить его правильно работать. Я не пробовал сжатие (командная строка: zip -0r ...), утилиту архивирования и плагин 7zip, но ничего из этого не работает. Все файлы .docx, которые я создаю, не будут открываться в исходных программах, даже если я не изменяю ни одного файла. Какие-нибудь советы?

Ответы:


36

Важно, чтобы файлы, из которых они состоят docx, не находились в другой папке, то есть [Content_Types].xmlдолжны находиться в корне полученного заархивированного файла. Аналогичный вопрос был задан на StackOverflow.

Когда вы открываете (или извлекаете в текущий каталог ) zipфайл, у вас должно быть что-то похожее на следующее:

./docProps/
./word/
./_rels/
./customXml/
./[Content_Types].xml

Если эти файлы находятся в другом каталоге внутри файла zipили docx, он не будет работать. Обратите внимание, что я не получаю customXmlпапку в пустом документе Word, но в отчете, который я первоначально проверял, он был. У вас может быть больше (или меньше) каталогов.

Команда для их распаковки, выданная из «текущего каталога», выглядит так:

zip -r preso.pptx *

1
Спасибо. Я думаю, что другим ключом было редактировать вещи только с помощью терминала. Даже после добавления -x .DS_Storeон все равно не будет работать, если я не использую Finder для навигации. Так что я просто использовал textmate и все хорошо.
Асмит

Я не уверен, что у меня нет Mac для тестирования, но проблема может быть вызвана тем, что Mac и его приложения по CR умолчанию используют маркер новой строки и Word ожидают CR+LF, хотя спецификации XML говорят, что они должны обрабатывать их одинаково. Я не могу сказать, правильно ли Word следует этой спецификации или нет. Также могут быть некоторые неожиданные изменения кодировки или даже создание скрытого файла, еще раз, я не могу ничего сказать наверняка. Кажется, вы все равно нашли обходной путь.
Боб

Да, я думаю, что это был Finder. Я даже могу открывать файлы XML в textmate или что-то еще, редактировать, сохранять, и пока я делаю все архивирование / просмотр / разархивирование в терминале, это нормально. Кажется, теперь работает - проблема с корневым файлом. Спасибо.
Асмит
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.