Файлы plist

Материал из Rujel
Перейти к: навигация, поиск

Формат plist используется в программном обеспечении Apple для хранения настроек и других данных. В РУЖЭЛЬ он применяется, так как библиотека WebObjects предоставляет удобные средства обработки этого формата.

Содержимое plist-файла представляет собой XML-документ, оформленный в соответствии с DTD PropertyList-1.0

Описание схемы XML[править]

Схема plist проста и предоставляет возможность хранения данных различных типов в иерархической структуре вложенных словарей и/или списков.

Корневым элементом является тег <plist>, он может содержать любой из предусмотренных типов. В большинстве случаев это будет словарь <dict>.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
   ...
</dict>
</plist>

В словаре содержится произвольное количество пар «ключ-значение».

  • Ключ заключается в теги <key>.
  • Значение может быть любым поддерживаемым типом, включая вложенный словарь <dict> и список <array>.
<dict>
  <key>имяКлюча</key>
  <string>значение</string>
  <key>название подраздела</key>
  <dict>
     <key>имяКлюча2</key>
     <string>значение2</string>
     <key>другойКлюч</key>
     <integer>1</integer>
</dict>

Допустимые типы данных[править]

Тег Тип данных Комментарий
<string> Строка это наиболее распространенный тип данных
<dict> Словарь для создания иерархии данных
<array> Массив список произвольной длины их любых допустимых типов данных
<integer> Целое число положительное или отрицательное
<real> Действительное число с плавающей точкой, допустимо использование экспоненты
<true/> , <false/> Логическое теги "истина" и "ложь" не предусматривают содержимого
<date> Дата и время в формате ГГГГ-ММ-ДДTЧЧ:ММ:ССZ
Бинарные данные любые данные, кодированные в Base-64

Редакторы[править]

Редактировать файлы plist можно в любом редакторе для простых текстов. Для удобства можно использовать редакторы с подсветкой тегов или выделением ключевых значений. Добавить удобства могут различные редакторы XML.

Также существуют специализированные редакторы plist. Например такие (бесплатные):

  • в Mac OS X :
    • Property List Editor из состава инструментария разработчика — XCode
    • Pref Setter от независимых разработчиков
    • в интернете можно найти много других вариантов
  • для Windows мы смогли найти два решения:
  • для Linux ничего найти не удалось. (Если обнаружите, впишите)