Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы CoreFoundation ссылка CFPropertyList

Опции
Развертывание Target:

На этой странице
Язык:

Ссылка CFPropertyList

CFPropertyList обеспечивает функции, преобразовывающие объекты списка свойств в и от нескольких сериализованных форматов, таких как XML. CFPropertyListRef введите, который обозначает, что объекты CFPropertyList являются абстрактным типом для объектов списка свойств. В зависимости от содержания данных XML, используемых для создания списка свойств, CFPropertyListRef может быть любой из объектов списка свойств: CFData, CFString, CFArray, CFDictionary, CFDate, CFBoolean и CFNumber. Обратите внимание на то, что при использовании списка свойств для генерации XML, ключи любых словарей в списке свойств должны быть объектами CFString.

Важно понять, что CFPropertyList обеспечивает абстракцию для всех типов списка свойств — можно думать о CFPropertyList в объектно-ориентированных условиях, как являющихся суперклассом CFString, CFNumber, CFDictionary, и т.д. Когда Базовая функция Основы возвращает a CFPropertyListRef, это означает, что значение может быть любым из типов списка свойств. Например, CFPreferencesCopyAppValue возвраты a CFPropertyListRef. Это означает, что значение возвратилось, может быть объект CFString, объект CFNumber, объект CFDictionary, и т.д. снова. Можно использовать CFGetTypeID определить, какой объект значение списка свойств.

Вы используете один из CFPropertyListCreate... функции для создания списка свойств возражают данный существующий объект списка свойств, необработанные данные XML (как в файле), или поток. Можно также преобразовать объект списка свойств в XML использование CFPropertyListCreateXMLData функция. Вы используете CFPropertyListWriteToStream функционируйте, чтобы записать список свойств в поток вывода и проверить объект списка свойств использование CFPropertyListIsValid функция. CFPropertyList должным образом заботится о проблемах порядка байтов — список свойств (представленный ли потоком, XML или объектом CFData) создаваемый на основанном на PowerPC Macintosh правильно интерпретируется на основанном на Intel Macintosh, и наоборот.

Для примеров кода, иллюстрирующих, как считать и записать файлы списка свойств, посмотрите, что Список свойств Программирует Темы для Базовой Основы и в определенном Сохранении и Восстановлении Списков свойств.

Функции

  • Создает список свойств из данного объекта CFData.

    Объявление

    Swift

    func CFPropertyListCreateWithData(_ allocator: CFAllocator!, _ data: CFData!, _ options: CFOptionFlags, _ format: UnsafeMutablePointer<CFPropertyListFormat>, _ error: UnsafeMutablePointer<Unmanaged<CFError>?>) -> Unmanaged<CFPropertyList>!

    Objective C

    CFPropertyListRef CFPropertyListCreateWithData ( CFAllocatorRef allocator, CFDataRef data, CFOptionFlags options, CFPropertyListFormat *format, CFErrorRef *error );

    Параметры

    allocator

    Средство выделения для использования для выделения памяти для нового объекта списка свойств. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    data

    Объект CFData, содержащий сериализированное представление списка свойств.

    options

    A CFPropertyListMutabilityOptions постоянный для указания переменчивости возвращенного списка свойств — посмотрите Опции Переменчивости Списка свойств для возможных значений.

    format

    Если этот параметр не -NULL, по возврату это будет установлено в формат данных. Посмотрите Форматы Списка свойств для возможных значений.

    error

    Если этот параметр не -NULL, если ошибка произойдет, то по возврату это будет содержать ошибку CFError при описании проблемы. Владение соблюдает Создать Правило.

    Возвращаемое значение

    Новый список свойств, создаваемый из данных в data. Если ошибка происходит при парсинге данных, возвратов NULL. Владение соблюдает Создать Правило.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Создайте и возвратите список свойств с вводом CFReadStream.

    Объявление

    Swift

    func CFPropertyListCreateWithStream(_ allocator: CFAllocator!, _ stream: CFReadStream!, _ streamLength: CFIndex, _ options: CFOptionFlags, _ format: UnsafeMutablePointer<CFPropertyListFormat>, _ error: UnsafeMutablePointer<Unmanaged<CFError>?>) -> Unmanaged<CFPropertyList>!

    Objective C

    CFPropertyListRef CFPropertyListCreateWithStream ( CFAllocatorRef allocator, CFReadStreamRef stream, CFIndex streamLength, CFOptionFlags options, CFPropertyListFormat *format, CFErrorRef *error );

    Параметры

    allocator

    Средство выделения для использования для выделения памяти для нового объекта списка свойств. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    stream

    CFReadStream, содержащий сериализированное представление списка свойств.

    streamLength

    Число байтов для чтения из потока. Передача 0 для чтения до, конец потока обнаруживается.

    options

    A CFPropertyListMutabilityOptions постоянный для указания переменчивости возвращенного списка свойств — посмотрите Опции Переменчивости Списка свойств для возможных значений.

    format

    Если этот параметр не -NULL, по возврату это будет установлено в формат данных. Посмотрите Форматы Списка свойств для возможных значений.

    error

    Если этот параметр не -NULL, если ошибка произойдет, то по возврату это будет содержать ошибку CFError при описании проблемы. Владение соблюдает Создать Правило.

    Возвращаемое значение

    Новый список свойств, создаваемый из данных в stream. Если ошибка происходит при парсинге данных, возвратов NULL. Владение соблюдает Создать Правило.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Рекурсивно создает копию данного списка свойств.

    Объявление

    Swift

    func CFPropertyListCreateDeepCopy(_ allocator: CFAllocator!, _ propertyList: CFPropertyList!, _ mutabilityOption: CFOptionFlags) -> CFPropertyList!

    Objective C

    CFPropertyListRef CFPropertyListCreateDeepCopy ( CFAllocatorRef allocator, CFPropertyListRef propertyList, CFOptionFlags mutabilityOption );

    Параметры

    allocator

    Средство выделения для использования для выделения памяти для нового списка свойств. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    propertyList

    Список свойств для копирования. Это может быть любым из стандартных объектов списка свойств, например CFArray или объект CFDictionary.

    mutabilityOption

    Константа, указывающая степень переменчивости возвращенного списка свойств. Посмотрите Опции Переменчивости Списка свойств для описаний возможных значений.

    Возвращаемое значение

    Новый список свойств, который является копией propertyList. Владение соблюдает Создать Правило.

    Обсуждение

    Рекурсивно создает копию данного списка свойств так вложенные массивы, и словари копируются, а также самый верхний контейнер.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Создает список свойств с помощью указанного XML или двоичных данных списка свойств.

    Объявление

    Swift

    func CFPropertyListCreateFromXMLData(_ allocator: CFAllocator!, _ data: CFData!, _ mutabilityOption: CFOptionFlags, _ errorString: UnsafeMutablePointer<Unmanaged<CFString>?>) -> Unmanaged<CFPropertyList>!

    Objective C

    CFPropertyListRef CFPropertyListCreateFromXMLData ( CFAllocatorRef allocator, CFDataRef xmlData, CFOptionFlags mutabilityOption, CFStringRef *errorString );

    Параметры

    allocator

    Средство выделения для использования для выделения памяти для нового списка свойств. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    data

    Необработанные байты для преобразования в список свойств. Байты могут быть содержанием XML-файла или двоичного списка свойств (см. Форматы Списка свойств).

    mutabilityOption

    Константа, указывающая степень переменчивости для возвращенного списка свойств. Посмотрите Опции Переменчивости Списка свойств для описаний возможных значений.

    errorString

    По возврату, NULL если преобразование успешно, иначе строка, описывающая природу ошибки. Сообщения об ошибках не локализуются, но могут быть в будущем, таким образом, они не в настоящее время подходят для сравнения.

    Передача NULL если Вы не хотите получать строку ошибки. Владение соблюдает Создать Правило.

    Возвращаемое значение

    Новый список свойств, если преобразование успешно, иначе NULL. Владение соблюдает Создать Правило.

    Специальные замечания

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.10.

  • Создает список свойств с помощью данных от потока.

    Объявление

    Swift

    func CFPropertyListCreateFromStream(_ allocator: CFAllocator!, _ stream: CFReadStream!, _ streamLength: CFIndex, _ mutabilityOption: CFOptionFlags, _ format: UnsafeMutablePointer<CFPropertyListFormat>, _ errorString: UnsafeMutablePointer<Unmanaged<CFString>?>) -> Unmanaged<CFPropertyList>!

    Objective C

    CFPropertyListRef CFPropertyListCreateFromStream ( CFAllocatorRef allocator, CFReadStreamRef stream, CFIndex streamLength, CFOptionFlags mutabilityOption, CFPropertyListFormat *format, CFStringRef *errorString );

    Параметры

    allocator

    Средство выделения для использования для выделения памяти для нового списка свойств. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    stream

    Поток, данные которого содержат содержание. Поток должен быть открыт и сконфигурирован — эта функция просто читает байты из потока. Поток может содержать любой поддерживаемый тип списка свойств (см. Форматы Списка свойств).

    streamLength

    Число байтов для чтения. Если 0, эта функция будет читать до конца потока.

    mutabilityOption

    Константа, указывающая степень переменчивости для возвращенного списка свойств. Посмотрите Опции Переменчивости Списка свойств для описаний возможных значений.

    format

    Константа, указывающая формат списка свойств. Посмотрите Форматы Списка свойств для возможных значений.

    errorString

    По возврату, NULL если преобразование успешно, иначе строка, описывающая природу ошибки. Сообщения об ошибках не локализуются, но могут быть в будущем, таким образом, они не подходят для сравнения.

    Передача NULL если Вы не хотите получать строку ошибки. Владение соблюдает Создать Правило.

    Возвращаемое значение

    Новый список свойств, инициализированный с данными, содержавшимися в stream. Владение соблюдает Создать Правило.

    Обсуждение

    Эта функция просто читает байты из stream запуск в текущем расположении до конца, которое, как ожидают, будет концом списка свойств, или до числа байтов, указанных streamLength если это не 0.

    Специальные замечания

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Осуждаемый в OS X v10.10.

  • Возвращает объект CFData, содержащий сериализированное представление данного списка свойств в указанном формате.

    Объявление

    Swift

    func CFPropertyListCreateData(_ allocator: CFAllocator!, _ propertyList: CFPropertyList!, _ format: CFPropertyListFormat, _ options: CFOptionFlags, _ error: UnsafeMutablePointer<Unmanaged<CFError>?>) -> Unmanaged<CFData>!

    Objective C

    CFDataRef CFPropertyListCreateData ( CFAllocatorRef allocator, CFPropertyListRef propertyList, CFPropertyListFormat format, CFOptionFlags options, CFErrorRef *error );

    Параметры

    allocator

    Средство выделения для использования для выделения памяти для нового объекта данных. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    propertyList

    Список свойств для выписывания.

    format

    CFPropertyListFormat, постоянный для указания формата данных. Посмотрите Форматы Списка свойств для возможных значений.

    options

    Этот параметр в настоящее время не использован и должен быть установлен на 0.

    error

    Если этим параметром будет не-NULL, если ошибка произойдет, то по возврату это будет содержать ошибку CFError при описании проблемы. Владение соблюдает Создать Правило.

    Возвращаемое значение

    Объект CFData, содержащий сериализированное представление propertyList в формат, указанный format. Владение соблюдает Создать Правило.

    Обсуждение

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Запишите байты сериализированного списка свойств к потоку.

    Объявление

    Swift

    func CFPropertyListWrite(_ propertyList: CFPropertyList!, _ stream: CFWriteStream!, _ format: CFPropertyListFormat, _ options: CFOptionFlags, _ error: UnsafeMutablePointer<Unmanaged<CFError>?>) -> CFIndex

    Objective C

    CFIndex CFPropertyListWrite ( CFPropertyListRef propertyList, CFWriteStreamRef stream, CFPropertyListFormat format, CFOptionFlags options, CFErrorRef *error );

    Параметры

    propertyList

    Список свойств для выписывания.

    stream

    CFWriteStream, в который можно записать данные. Поток должен быть открыт и сконфигурирован.

    format

    CFPropertyListFormat, постоянный для указания формата данных. Посмотрите Форматы Списка свойств для возможных значений.

    options

    Этот параметр в настоящее время не использован и должен быть установлен на 0.

    error

    Если этим параметром будет не-NULL, если ошибка произойдет, то по возврату это будет содержать ошибку CFError при описании проблемы. Владение соблюдает Создать Правило.

    Возвращаемое значение

    Число байтов, записанных в stream. Если ошибка происходит, возвраты 0.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.6 и позже.

  • Создает представление XML указанного списка свойств.

    Объявление

    Swift

    func CFPropertyListCreateXMLData(_ allocator: CFAllocator!, _ propertyList: CFPropertyList!) -> Unmanaged<CFData>!

    Objective C

    CFDataRef CFPropertyListCreateXMLData ( CFAllocatorRef allocator, CFPropertyListRef propertyList );

    Параметры

    allocator

    Средство выделения для использования для выделения памяти для нового объекта данных. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    propertyList

    Список свойств для преобразования. Это может быть любым из стандартных объектов списка свойств, например CFArray или объект CFDictionary.

    Возвращаемое значение

    Объект CFData, содержащий данные XML. Владение соблюдает Создать Правило.

    Специальные замечания

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.10.

  • Пишут байты сериализации списка свойств к потоку.

    Объявление

    Swift

    func CFPropertyListWriteToStream(_ propertyList: CFPropertyList!, _ stream: CFWriteStream!, _ format: CFPropertyListFormat, _ errorString: UnsafeMutablePointer<Unmanaged<CFString>?>) -> CFIndex

    Objective C

    CFIndex CFPropertyListWriteToStream ( CFPropertyListRef propertyList, CFWriteStreamRef stream, CFPropertyListFormat format, CFStringRef *errorString );

    Параметры

    propertyList

    Список свойств для выписывания.

    stream

    Поток для записи в. Поток должен быть открыт и сконфигурирован — эта функция просто пишет байты в поток.

    format

    Константа, указывающая формат, раньше писала propertyList. Посмотрите Форматы Списка свойств для возможных значений.

    errorString

    По возврату, NULL если преобразование успешно, иначе строка, описывающая природу ошибок. Сообщения об ошибках не локализуются, но могут быть в будущем, таким образом, они не в настоящее время подходят для сравнения.

    Передача NULL если Вы не хотите получать строку ошибки. Владение соблюдает Создать Правило.

    Возвращаемое значение

    Число записанных байтов, или 0 если произошла ошибка. Если 0 возвращается, errorString будет содержать сообщение об ошибке.

    Обсуждение

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

    Специальные замечания

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Осуждаемый в OS X v10.10.

  • Определяет, допустим ли список свойств.

    Объявление

    Swift

    func CFPropertyListIsValid(_ plist: CFPropertyList!, _ format: CFPropertyListFormat) -> Boolean

    Objective C

    Boolean CFPropertyListIsValid ( CFPropertyListRef plist, CFPropertyListFormat format );

    Параметры

    plist

    Список свойств для проверки.

    format

    Константа, указывающая допустимый формат plist. Посмотрите Форматы Списка свойств для возможных значений.

    Возвращаемое значение

    true если граф объектов базировался в plist допустимый график списка свойств — т.е. список свойств не содержит циклов, только содержит объекты списка свойств, и все ключи словаря являются строками; иначе false.

    Обсуждение

    Версия библиотеки отладки этой функции распечатывает некоторые полезные сообщения.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.2 и позже.

Типы данных

Прочие условия

  • Ссылка на объект CFPropertyList.

    Объявление

    Swift

    typealias CFPropertyListRef = CFPropertyList

    Objective C

    typedef CFTypeRef CFPropertyListRef;

    Обсуждение

    Это - абстрактный тип для объектов списка свойств. Возвращаемое значение CFPropertyListCreateFromXMLData функция зависит от содержания данных данных XML. CFPropertyListRef может быть ссылка на любой из объектов списка свойств: CFData, CFString, CFArray, CFDictionary, CFDate, CFBoolean и CFNumber.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

  • Введите для флагов, определяющих степень переменчивости недавно создаваемых списков свойств.

    Объявление

    Swift

    struct CFPropertyListMutabilityOptions : RawOptionSetType { init(_ rawValue: CFOptionFlags) init(rawValue rawValue: CFOptionFlags) static var Immutable: CFPropertyListMutabilityOptions { get } static var MutableContainers: CFPropertyListMutabilityOptions { get } static var MutableContainersAndLeaves: CFPropertyListMutabilityOptions { get } }

    Objective C

    typedef enum CFPropertyListMutabilityOptions CFPropertyListMutabilityOptions;

    Обсуждение

    Посмотрите Опции Переменчивости Списка свойств для возможных значений.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.0 и позже.

Константы

Прочие условия

  • Указывает формат списка свойств.

    Объявление

    Swift

    enum CFPropertyListFormat : CFIndex { case OpenStepFormat case XMLFormat_v1_0 case BinaryFormat_v1_0 }

    Objective C

    enum CFPropertyListFormat { kCFPropertyListOpenStepFormat = 1, kCFPropertyListXMLFormat_v1_0 = 100, kCFPropertyListBinaryFormat_v1_0 = 200 }; typedef enum CFPropertyListFormat CFPropertyListFormat;

    Константы

    • OpenStepFormat

      kCFPropertyListOpenStepFormat

      Формат OpenStep (использованию этого формата обескураживают).

      Доступный в OS X v10.2 и позже.

    • XMLFormat_v1_0

      kCFPropertyListXMLFormat_v1_0

      Версия формата XML 1.0.

      Доступный в OS X v10.2 и позже.

    • BinaryFormat_v1_0

      kCFPropertyListBinaryFormat_v1_0

      Версия 1.0 двоичного формата.

      Доступный в OS X v10.2 и позже.

    Оператор импорта

    Objective C

    @import CoreFoundation;

    Swift

    import CoreFoundation

    Доступность

    Доступный в OS X v10.2 и позже.

  • Флаги опции, определяющие степень переменчивости недавно создаваемых списков свойств.

    Объявление

    Swift

    struct CFPropertyListMutabilityOptions : RawOptionSetType { init(_ rawValue: CFOptionFlags) init(rawValue rawValue: CFOptionFlags) static var Immutable: CFPropertyListMutabilityOptions { get } static var MutableContainers: CFPropertyListMutabilityOptions { get } static var MutableContainersAndLeaves: CFPropertyListMutabilityOptions { get } }

    Objective C

    enum CFPropertyListMutabilityOptions { kCFPropertyListImmutable = 0, kCFPropertyListMutableContainers = 1, kCFPropertyListMutableContainersAndLeaves = 2 };

    Константы

    • Immutable

      kCFPropertyListImmutable

      Указывает, что список свойств должен быть неизменным.

      Доступный в OS X v10.0 и позже.

    • MutableContainers

      kCFPropertyListMutableContainers

      Указывает, что список свойств должен иметь непостоянные контейнеры, но неизменные листы.

      Доступный в OS X v10.0 и позже.

    • MutableContainersAndLeaves

      kCFPropertyListMutableContainersAndLeaves

      Указывает, что список свойств должен иметь непостоянные контейнеры и непостоянные листы.

      Доступный в OS X v10.0 и позже.

  • Коды ошибки для чтения списка свойств и записи функций такой как CFPropertyListCreateWithData.

    Объявление

    Swift

    var kCFPropertyListReadCorruptError: Int { get } var kCFPropertyListReadUnknownVersionError: Int { get } var kCFPropertyListReadStreamError: Int { get } var kCFPropertyListWriteStreamError: Int { get }

    Objective C

    enum { kCFPropertyListReadCorruptError = 3840, kCFPropertyListReadUnknownVersionError = 3841, kCFPropertyListReadStreamError = 3842, kCFPropertyListWriteStreamError = 3851, };

    Константы

    • kCFPropertyListReadCorruptError

      kCFPropertyListReadCorruptError

      Показывает ошибку при парсинге списка свойств.

      Доступный в OS X v10.6 и позже.

    • kCFPropertyListReadUnknownVersionError

      kCFPropertyListReadUnknownVersionError

      Показывает, что номер версии в списке свойств неизвестен.

      Доступный в OS X v10.6 и позже.

    • kCFPropertyListReadStreamError

      kCFPropertyListReadStreamError

      Показывает потоковую ошибку, читая список свойств.

      Доступный в OS X v10.6 и позже.

    • kCFPropertyListWriteStreamError

      kCFPropertyListWriteStreamError

      Показывает потоковую ошибку, пишущий список свойств.

      Доступный в OS X v10.6 и позже.