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

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

Разработчик

Ссылка платформы основы ссылка класса NSArchiver

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

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

NSArchiver

NSArchiver, конкретный подкласс NSCoder, обеспечивает способ закодировать объекты в архитектурно-независимый формат, который может быть сохранен в файле. При архивации графика объектов информация о классе и переменные экземпляра для каждого объекта записаны в архив. NSArchiverсопутствующий класс, NSUnarchiver, декодирует данные в архиве и создает график объектов, эквивалентных исходному набору.

NSArchiver хранит архивные данные в непостоянном объекте данных (NSMutableData). После кодирования объектов Вы можете иметь NSArchiver возразите сразу пишут этот непостоянный объект данных в файл, или можно получить непостоянный объект данных для некоторого другого использования.

В OS X v10.2 и позже, NSArchiver и NSUnarchiver были заменены NSKeyedArchiver и NSKeyedUnarchiver соответственно — см. Руководство по программированию Архивов и Сериализации.

Наследование


Соответствует


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


Swift

import Foundation

Objective C

@import Foundation;

Доступность


Доступный в OS X v10.0 и позже.
  • init (forWritingWithMutableData:) - initForWritingWithMutableData: Определяемый инициализатор

    Возвращает archiver, инициализированный для кодирования потока и информации о версии в данный непостоянный объект данных.

    Объявление

    Swift

    init(forWritingWithMutableData data: NSMutableData)

    Objective C

    - (instancetype)initForWritingWithMutableData:(NSMutableData *)data

    Параметры

    data

    Непостоянный объект данных, в который можно записать архив. Это значение не должно быть nil.

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

    Объект archiver, инициализированный для кодирования потока и информации о версии в data.

    Обсуждение

    Повышения NSInvalidArgumentException если data nil.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    – archiverData

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

    Объявление

    Swift

    class func archivedDataWithRootObject(_ rootObject: AnyObject) -> NSData

    Objective C

    + (NSData *)archivedDataWithRootObject:(id)rootObject

    Параметры

    rootObject

    Корневой объект графа объектов для архивации.

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

    Объект данных, содержащий закодированную форму графа объектов, корневой объект которого rootObject.

    Обсуждение

    Этот метод вызывает initForWritingWithMutableData: и encodeRootObject: создать временный archiver, кодирующий граф объектов.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Создает временный экземпляр NSArchiver и архивирует граф объектов путем кодирования его в объект данных и записи получающегося объекта данных в указанный файл.

    Объявление

    Swift

    class func archiveRootObject(_ rootObject: AnyObject, toFile path: String) -> Bool

    Objective C

    + (BOOL)archiveRootObject:(id)rootObject toFile:(NSString *)path

    Параметры

    rootObject

    Корневой объект графа объектов для архивации.

    path

    Расположение файл, в который можно записать архив.

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

    YEStrue если архив был записан успешно, иначе NOfalse.

    Обсуждение

    Этот удобный метод вызывает archivedDataWithRootObject: получить закодированные данные, и затем отправляет тому объекту данных сообщение writeToFile:atomically:, использование path для первого параметра и YEStrue для второго.

    Заархивированные данные должны быть получены от архива объектом NSUnarchiver.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Архивирует данный объект вместе со всеми объектами, с которыми он подключен.

    Объявление

    Swift

    func encodeRootObject(_ rootObject: AnyObject)

    Objective C

    - (void)encodeRootObject:(id)rootObject

    Параметры

    rootObject

    Корневой объект графа объектов для архивации.

    Обсуждение

    Если с каким-либо объектом встречаются несколько раз при пересечении графика, он кодируется только один раз, но сохранены многократные ссылки на него. (См. Руководство по программированию Архивов и Сериализации для получения дополнительной информации.)

    Это сообщение не должно быть отправлено несколько раз в данный NSArchiver объект; NSInvalidArgumentException если корневой объект был уже закодирован, повышен. Если необходимо закодировать многократные графы объектов, поэтому, не пытайтесь снова использовать NSArchiver экземпляр; вместо этого, создайте новый для каждого графика.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Условно архивирует данный объект.

    Объявление

    Swift

    func encodeConditionalObject(_ object: AnyObject?)

    Objective C

    - (void)encodeConditionalObject:(id)object

    Параметры

    object

    Объект заархивировать.

    Обсуждение

    Этот метод переопределяет реализацию суперкласса для разрешения object быть закодированным, только если это также кодируется безусловно другим объектом в графе объектов. Условное кодирование позволяет, Вы закодировать одну часть графика отсоединились от остальных. (См. Руководство по программированию Архивов и Сериализации для получения дополнительной информации.)

    Этот метод должен быть вызван только из encodeWithCoder: метод. Если object nil, NSArchiver объект кодирует его безусловно как nil. Этот метод повышает NSInvalidArgumentException если не был закодирован никакой корневой объект.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • archiverData archiverData Свойство

    Архивные данные получателя. (только для чтения)

    Объявление

    Swift

    var archiverData: NSMutableData { get }

    Objective C

    @property(readonly, retain) NSMutableData *archiverData

    Обсуждение

    Возвращенный объект данных - тот же самый указанный как параметр initForWritingWithMutableData:. Это содержит любые данные, был закодирован к настоящему времени вызовами различных методов кодирования. Является самым безопасным не вызвать этот метод до окончания encodeRootObject: возвратился. Другими словами, несмотря на то, что для класса возможно вызвать этот метод из encodeWithCoder: метод, тот метод не должен изменять данные.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Возвращается имя класса раньше архивировало экземпляры класса с данным истинным именем.

    Объявление

    Swift

    func classNameEncodedForTrueClassName(_ trueName: String) -> String?

    Objective C

    - (NSString *)classNameEncodedForTrueClassName:(NSString *)trueName

    Параметры

    trueName

    Настоящее имя закодированного класса.

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

    Имя класса раньше архивировало экземпляры класса trueName.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Кодирует имя замены для класса с данным истинным именем.

    Объявление

    Swift

    func encodeClassName(_ trueName: String, intoClassName inArchiveName: String)

    Objective C

    - (void)encodeClassName:(NSString *)trueName intoClassName:(NSString *)inArchiveName

    Параметры

    trueName

    Настоящее имя класса в заархивированном графе объектов.

    inArchiveName

    Имя класса для использования в архиве вместо trueName.

    Обсуждение

    Любые объекты, с которыми впоследствии встречаются, класса trueName архивируются как экземпляры класса inArchiveName. Является самым безопасным не вызвать этот метод во время процесса архивации (т.е. в encodeWithCoder: метод). Вместо этого вызовите его прежде encodeRootObject:.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Заставляет получатель обрабатывать последующие запросы для кодирования данного объекта, как будто они были запросами для кодирования другого данного объекта.

    Объявление

    Swift

    func replaceObject(_ object: AnyObject, withObject newObject: AnyObject)

    Objective C

    - (void)replaceObject:(id)object withObject:(id)newObject

    Параметры

    object

    Объект в заархивированном графе объектов.

    newObject

    Объект, которым можно заменить object в архиве.

    Обсуждение

    Оба object и newObject должны быть доступные объекты.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Повышенный NSArchiver если существует инициализация задач или кодирование.

    Объявление

    Swift

    let NSInconsistentArchiveException: NSString!

    Objective C

    extern NSString *NSInconsistentArchiveException;

    Константы

    • NSInconsistentArchiveException

      NSInconsistentArchiveException

      Имя исключения, повышенного NSArchiver если существует инициализация задач или кодирование.

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