Преимущества формата DOCX по DOC

Сегодня я случайно узнал, что .docx является тем же .zip (или нет никакой большой разницы между ними). При изменении .docx на .zip и открытый с WinRAR, Вы видите набор XML-файлов в папках. В том XML-файле это хранится текст, шрифты, владелец, в последний раз измененный и так далее. Одним словом, вся информация хранится как данные XML.

Но то же не является правильным для .doc дополнительных файлов. Невозможно открыть их как .zip op как .rar.

Так вопрос: Каково преимущество того, чтобы хранить данные .docx в XML, что Microsoft изменила способ хранить данные? Действительно я хочу знать не преимущество формата XML, но почему Microsoft использует несколько XML-файлов, чтобы хранить .docx данные. Это поворачивает это, .docx не является новым форматом в корне.

9
задан 09.10.2009, 12:57

5 ответов

A .docx файл может сохранить встроенные ресурсы, как файлы изображений, не просто XML-файлы. Вместо того, чтобы кодировать материал в base64 или чем-то и сохранить его в XML-файле или изобрести еще один двоичный формат сериализации, они решили пойти со стандартным форматом ZIP.

Около этого XML является очень подробным форматом файла, содержащим много избыточных шаблонов. Можно получить высокую степень сжатия для XML-файлов.

Между прочим, я действительно не получаю "обманывание нас" часть. Лучше изобрести новый загадочный формат файла с нуля или использовать стандартный, известный формат?

12
ответ дан 07.12.2019, 13:11
  • 1
    Основное преимущество, которое я вижу, - то, что существует, Открывают API для того, чтобы на самом деле создать эти файлы, таким образом, создать .docx файлы с нуля возможно, не тратя партии на собственный SDKs. Microsoft SDK даже предоставляет отражатель документа, который сгенерирует код C# для генерации предварительно сделанного документа с нуля. – Will Eddins 09.10.2009, 21:45
  • 2
    @Guard: Да. Мой ответ обращается к исходной версии вопроса. Вопрос изменился значительно с тех пор ;) Оригинальным названием была "Microsoft, обманывает?" – Mehrdad Afshari 10.10.2009, 11:52

Статья Wikipedia подводит итог его довольно приятно:

"Microsoft попала под увеличивающееся давление для принятия открытого формата файла, в особенности несколько стран приняли правила, что официальные документы должны быть в открытом формате".

Править: И архивирование его имеет большой смысл, поскольку XML является очень подробным, и естественно сжимается действительно хорошо.

5
ответ дан 07.12.2019, 13:11

Используя переименованный .zip файл довольно обычная практика - например, Quake III pak файлы является действительно .zip файлами. Нет никакого смысла изобретающего Ваш собственный формат сжатого файла, когда совершенно хорошие уже существуют.

3
ответ дан 07.12.2019, 13:11
  • 1
    Больше примеров использования архивов ZIP: Java .jar, Winamp .wsz/.wal (кожа), Firefox .xpi (XPInstaller - темы, дополнения). (tar архивы также популярны.) – grawity 09.10.2009, 16:02

Это не только Office, Открывают XML, который использует заархивированный XML. Откройте Office's OpenDocument делает то же негласно.

Существует несколько преимуществ, перечисленных на странице Wikipedia на Открыть Packaging Conventions:

Косвенность

Возьмите пример каталога, где логотип повторяется 1,000 раз. Используя косвенный механизм, если мы хотим изменить логотип, мы только должны изменить одну запись в одном файле без поиска, включенного, потому что мы знаем, где посмотреть. Это увеличивает пригодность для обслуживания существенно. Если Вы хотите изменить расположение, скажем, каталогов ZIP, где Ваши файлы хранятся, это становится тривиальным вопросом, потому что Вы не должны знать каждый элемент, который может указать на файл, они - все в одном месте.

Разделение на блоки

Это поощряет документы быть разделенными на маленькие блоки. Это лучше для сокращения эффекта повреждения файла. И лучше для доступа к данным: например, вся информация о стилях в одной части XML, каждом отдельном рабочем листе или таблице в их собственных различных частях. Это предоставляет более быстрый доступ и меньше создания объекта для клиентов, и помогает нескольким процессам работать над тем же документом.

Разделение на блоки также приносит пользу программистам. Замена одной таблицы стилей с другим становится операцией zip-файла, не операцией XML. И это уменьшает сумму вещей, которые должен понять программист, потому что они могут приблизиться к блокам, предполагающим, что вся информация о теме находится в том блоке: они сэкономлены умственный тяжелый труд необходимости перерыть большой файл с большим количеством посторонних элементов.

Относительная косвенность

В открыть Packaging Conventions каждый файл, который имеет ссылку, имеет свой собственный _rels файл с косвенными списками. Это помогает вырезать и вставить некоторую информацию со всеми ее связанными ресурсами в некоторых случаях, обеспечивает обзор имени для удаления шанса имени, сталкивающегося между файлами, и так далее.

1
ответ дан 07.12.2019, 13:11

Самое большое преимущество - то, что можно добраться до данных путем разархивации файла и копирования текста с XML-файлов. Это может быть сделано с утилитой zip и текстовым редактором, даже если у Вас нет копии Word 2007.

Это - то, что делает формат более открытым что более старые двоичные форматы.

0
ответ дан 07.12.2019, 13:11

Теги

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