Comments 15
Есть вероятность, что невозможность открыть документ запакованный 7z связана с использованием алгоритма deflate64 вместо deflate.
Пробовал:
7z a -mm=Deflate -tzip 11.docx *
7z a -mm=Copy -tzip 11.docx *
Выдаёт ошибку:
Под Windows проблема однозначно решается использованием класса ZipPackage из .net framework
https://msdn.microsoft.com/ru-ru/library/system.io.packaging.zippackage(v=vs.110).aspx
Там даже автоматически формируется ContentTypes. Сам столкнулся, когда нужно было писать xps файлы. Изначально пробовал использовать класс ZipFile и получавшиеся файлы не открывались стандартным средством просмотра. К сожалению не копал сильно глубоко после того как обнаружил, что ZipFile использует deflate64 в отличии от ZipPackage, который как раз является родным для xps, docx, xlsx… Может стоить копнуть исходники этого класса, чтобы понять разницу.
https://msdn.microsoft.com/ru-ru/library/system.io.packaging.zippackage(v=vs.110).aspx
Там даже автоматически формируется ContentTypes. Сам столкнулся, когда нужно было писать xps файлы. Изначально пробовал использовать класс ZipFile и получавшиеся файлы не открывались стандартным средством просмотра. К сожалению не копал сильно глубоко после того как обнаружил, что ZipFile использует deflate64 в отличии от ZipPackage, который как раз является родным для xps, docx, xlsx… Может стоить копнуть исходники этого класса, чтобы понять разницу.
А на разницу в правах доступа к файлам и каталогам в архиве созданных в Linux и Windows не обращали внимание?
> запакованные 7z под Linux не открываются в Microsoft Office
Решал немного похожую задачу, делал простой шаблонизатор под линкус: шаблонизатор для odf файлов, и там я использовал стандартный питоновский zipfile для зиппования.
Решал немного похожую задачу, делал простой шаблонизатор под линкус: шаблонизатор для odf файлов, и там я использовал стандартный питоновский zipfile для зиппования.
> запакованные 7z под Linux не открываются в Microsoft Office
на кодировку имен/путей в архиве не смотрели?
на кодировку имен/путей в архиве не смотрели?
UFO just landed and posted this here
А в итоге то что? Вы поэкспериментировали и все, или будете создавать полноценный механизм для создания и редактирования файлов docx?
Sign up to leave a comment.
Как я разбирал docx с помощью XSLT