
Мне удалось успешно распаковать и изучить содержимое файла .docx, но я не могу заставить повторное архивирование работать должным образом. Я пробовал не сжимать (командная строка: zip -0r ...), использовать утилиту архивации и плагин 7zip, но ничего из этого не работает. Все файлы .docx, которые я создаю, не открываются в исходных программах, даже если я не изменяю ни одного файла. Есть какие-нибудь советы?
решение1
Важно, чтобы файлы, входящие в состав архива, docx
не находились в другой папке, т.е. [Content_Types].xml
должны находиться в корне полученного архива.Похожий вопрос был задан на StackOverflow.
Когда вы открываете (или извлекаете)в текущий каталог) zip
файл, у вас должно получиться что-то похожее на следующее:
./docProps/
./word/
./_rels/
./customXml/
./[Content_Types].xml
Если у вас есть эти файлы в другом каталоге внутри файла zip
или docx
, это не сработает. Обратите внимание, что я не получаю папку customXml
в пустом документе Word, но в отчете, который я изначально тестировал, она была. У вас может быть больше (или меньше) каталогов.
Команда для их повторного архивирования, введенная из «текущего каталога», выглядит следующим образом:
zip -r preso.pptx *