- initForReadingFromData:error:
- initForReadingWithData:
Availability 有効性
Technology
@interface NSKeyedUnarchiver : NSCoder
NSKeyed
is a concrete subclass of NSCoder
that defines methods for decoding a set of named objects (and scalar values) from a keyed archive. The NSKeyed
class produces archives that this class can decode.
NSKeyed
は、NSCoder
のある具象サブクラスです、それは、いくつかのメソッドを、ひとそろいの名前付きオブジェクト(そしてスカラー値)をキー付きアーカイブからデコードするために定義します。NSKeyed
クラスは、このクラスがデコードできるアーカイブを生み出します。
The archiver creates keyed archive as a hierarchy of objects. The archiver treats each object as a namespace into which it can encode other objects. This means that an unarchiver can only decode objects encoded within the immediate scope of their parent object. Objects encoded elsewhere in the hierarchy — whether higher than, lower than, or parallel to this particular object — aren’t accessible. In this way, the keys used by a particular object to encode its instance variables need to be unique only within the scope of that object. アーカイバは、キー付きアーカイブをオブジェクトそれらの階層として作成します。アーカイバは、各オブジェクトを、それへとそれが他のオブジェクトをエンコードする名前空間とみなします。これは、あるアンアーカイバは、それらの親オブジェクトの直接スコープ内にエンコードされたオブジェクトそれらをデコードすることだけが可能であることを意味します。その階層の中のどこか他でエンコードされたオブジェクトは — この特定のオブジェクトより高い、より低い、またはそれに平行であろうと — アクセス可能ではありません。このやり方において、ある特定のオブジェクトによって使われてそれのインスタンス変数をエンコードするキーそれらは、そのオブジェクトのスコープ内でのみ特有である必要があります。
If you invoke one of the decode
-prefixed methods of this class using a key that does not exist in the archive, the return value indicates failure. This value varies by decoded type. For example, if a key does not exist in an archive, decode
returns NO
, decode
returns 0
, and decode
returns nil
.
あなたがこのクラスのdecode
接頭辞を付けられたメソッドの1つをアーカイブの中に存在しないキーを使って発動するならば、戻り値は失敗を指し示します。この値は、デコードされる型によって変化します。例えば、あるキーがあるアーカイブの中に存在しないならば、decode
はNO
を返します、decode
は0
を返します、そしてdecode
はnil
を返します。
NSKeyed
supports limited type coercion for numeric types. You can use any of the integer decode methods to decode a value encoded as any type of integer, whether a standard int
or an explicit 32-bit or 64-bit integer. Likewise, you can use the float
- or double
-returning decode methods to handle a value encoded as a float
or double
. If an encoded value is too large to fit within the coerced type, the decoding method throws a NSRange
. Further, when trying to coerce a value to an incompatible type — for example decoding an int
as a float
— the decoding method throws an NSInvalid
.
NSKeyed
は、制限された型強制を数値型に対してサポートします。あなたは、何らかの整数デコードメソッドを使って、何らかの整数としてエンコードされた値を、標準int
または明示的な32ビットまたは64ビット整数であろうとデコードできます。同様に、あなたはfloat
- またはdouble
- 返しのデコードメソッドを使って、float
またはdouble
としてエンコードされた値を取り扱うことができます。エンコードされた値がその強制された型内に収まるには大きすぎるならば、エンコードしているメソッドはNSRange
をスローします。さらに、ある値を互換性のない型に強制しようとする場合 — 例えばint
をfloat
としてデコードする — デコードしているメソッドはNSInvalid
をスローします。
- initForReadingFromData:error:
- initForReadingWithData:
+ unarchivedObjectOfClass:fromData:error:
+ unarchivedObjectOfClasses:fromData:error:
requiresSecureCoding
NSSecureCoding
.
レシーバが全てのアンアーカイブされたクラスをNSSecureCoding
に準拠するのに必要とするかどうかを指し示します。
+ unarchiveObjectWithData:
NSKeyedArchiver
and stored in a given NSData
object.
以前にNSKeyedArchiver
によってエンコードされてある与えられたNSData
オブジェクトに格納されたオブジェクトグラフをデコードして返します。
+ unarchiveTopLevelObjectWithData:error:
+ unarchiveObjectWithFile:
NSKeyedArchiver
written to the file at a given path.
以前にNSKeyedArchiver
によってエンコードされてある与えられたパスでファイルに書き出されたオブジェクトグラフをデコードして返します。
- containsValueForKey:
- decodeBoolForKey:
- decodeBytesForKey:returnedLength:
- decodeDoubleForKey:
- decodeFloatForKey:
- decodeIntForKey:
- decodeInt32ForKey:
- decodeInt64ForKey:
- decodeObjectForKey:
- finishDecoding
decodingFailurePolicy
delegate
+ setClass:forClassName:
+ classForClassName:
- setClass:forClassName:
- classForClassName:
NSKeyedUnarchiver
if there is a problem extracting an archive.
アーカイブから抜き出すことに問題があるならばNSKeyedUnarchiver
によって引き起こされる例外の名前。
NSKeyedArchiver
NSKeyedArchiverDelegate
NSKeyedUnarchiverDelegate
NSCoder
NSSecureUnarchiveFromDataTransformer