init(requiringSecureCoding : Bool)
init(forWritingWith : NSMutableData)
Availability 有効性
Technology
class NSKeyedArchiver : NSCoder
NSKeyed
, a concrete subclass of NSCoder
, provides a way to encode objects (and scalar values) into an architecture-independent format suitable for storage in a file. When you archive a set of objects, the archiver writes the class information and instance variables for each object to the archive. The companion class NSKeyed
decodes the data in an archive and creates a set of objects equivalent to the original set.
NSCoder
のある具象サブクラス、NSKeyed
は、オブジェクト(そしてスカラー値)をあるファイルにおける格納に適するアーキテクチャ非依存形式へとエンコードするある方法を提供します。あなたが一揃いのオブジェクトをアーカイブする場合、アーカイバは各オブジェクトに対してクラス情報とインスタンス変数をアーカイブに書き出します。対をなすクラスNSKeyed
は、アーカイブの中のデータをデコードして、元の集合に等しいひとそろいのオブジェクトを作成します。
A keyed archive differs from a non-keyed archive in that all the objects and values encoded into the archive have names, or keys. When decoding a non-keyed archive, the decoder must decode values in the same order the original encoder used. When decoding a keyed archive, the decoder requests values by name, meaning it can decode values out of sequence or not at all. Keyed archives, therefore, provide better support for forward and backward compatibility. キー付きカイブは、非キー付きアーカイブとは、アーカイブへとエンコードされる全てのオブジェクトと値が名前、またはキーを持つということにおいて異なります。非キー付きアーカイブをデコードする場合、デコーダは値を、元のエンコーダが使ったのと同じ順でデコードしなければなりません。キー付きアーカイブをデコードしている時、デコーダは、値それらを名前によって要請します、それが値それらを順不同でデコードするまたは全くしないことが可能であるのを意味します。キー付きアーカイブは、それゆえ、より良いサポートを前方および後方互換に提供します。
The keys given to encoded values must be unique only within the scope of the currently-encoding object. A keyed archive is hierarchical, so the keys used by object A to encode its instance variables don’t conflict with the keys used by object B. This is true even if A and B are instances of the same class. Within a single object, however, the keys used by a subclass can conflict with keys used in its superclasses. エンコードされた値に与えられたキーは、現在エンコードされるオブジェクトのスコープ内でのみ特有である必要があります。キー付きアーカイブは階層的です、それでオブジェクトAによって使われてそれのインスタンス変数をエンコードするキーは、オブジェクトBによって使われるキーと衝突しません。これは、AとBが同じクラスのインスタンスだとしても真です。ある単一のオブジェクト内部では、しかしながら、あるサブクラスによって使われるキーはそれのスーパークラスで使われるキーと衝突することがありえます。
An NSArchiver
object can write the archive data to a file or to a mutable-data object (an instance of NSMutable
) that you provide.
NSArchiver
オブジェクトは、アーカイブデータを書き出すことが、ファイルへとまたはあなたが提供するある可変データオブジェクト(NSMutable
のインスタンス)へと行えます。
init(requiringSecureCoding : Bool)
init(forWritingWith : NSMutableData)
class func archivedData (withRootObject : Any, requiringSecureCoding : Bool) -> Data
func finishEncoding ()
var encodedData : Data
var outputFormat : PropertyListSerialization.PropertyListFormat
var requiresSecureCoding : Bool
class func archivedData (withRootObject : Any) -> Data
class func archiveRootObject (Any, toFile : String) -> Bool
func encodeEncodable <T>(T, forKey : String)
func encode(Bool, forKey : String)
func encodeBytes (UnsafePointer<UInt8>?, length: Int, forKey : String)
func encodeConditionalObject (Any?, forKey : String)
func encode(Double, forKey : String)
double
value and associates it with a key.
与えられたdouble
値をエンコードして、それをあるキーと結びつけます。
func encode(Float, forKey : String)
float
value and associates it with a key.
与えられたfloat
値をエンコードして、それをあるキーと結びびつけます。
func encode(Int32, forKey : String)
func encode(Int64, forKey : String)
func encode(Any?, forKey : String)
var delegate: NSKeyedArchiverDelegate?
class func setClassName (String?, for: AnyClass)
class func className (for: AnyClass) -> String?
func setClassName (String?, for: AnyClass)
func className (for: AnyClass) -> String?
protocol NSKeyedArchiverDelegate
class NSKeyedUnarchiver
protocol NSKeyedUnarchiverDelegate
class NSCoder
class NSSecureUnarchiveFromDataTransformer