init(forReadingFrom : Data)
init(forReadingWith : Data)
Availability 有効性
Technology
class 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 false
, decode
returns 0
, and decode
returns nil
.
あなたがこのクラスのdecode
接頭辞を付けられたメソッドの1つをアーカイブの中に存在しないキーを使って発動するならば、戻り値は失敗を指し示します。この値は、デコードされる型によって変化します。例えば、あるキーがあるアーカイブの中に存在しないならば、decode
はfalse
を返します、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 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 range
. Further, when trying to coerce a value to an incompatible type — for example decoding an Int
as a Float
— the decoding method throws an invalid
.
NSKeyed
は、制限された型強制を数値型に対してサポートします。あなたは、何らかの整数デコードメソッドを使って、何らかの整数としてエンコードされた値を、標準Int
または明示的な32ビットまたは64ビット整数であろうとデコードできます。同様に、あなたはFloat
- またはDouble
- 返しのデコードメソッドを使って、Float
またはDouble
としてエンコードされた値を取り扱うことができます。エンコードされた値がその強制された型内に収まるには大きすぎるならば、エンコードしているメソッドはrange
をスローします。さらに、ある値を互換性のない型に強制しようとする場合 — 例えばInt
をFloat
としてデコードする — デコードしているメソッドはinvalid
をスローします。
init(forReadingFrom : Data)
init(forReadingWith : Data)
class func unarchiveTopLevelObjectWithData (Data) -> Any?
static func unarchivedObject <DecodedObjectType>( ofClass : DecodedObjectType.Type, from: Data) -> DecodedObjectType?
class func unarchivedObject (ofClasses : Set<AnyHashable>, from: Data) -> Any
static func unarchivedObject (ofClasses : [AnyClass], from: Data) -> Any?
var requiresSecureCoding : Bool
NSSecureCoding
.
レシーバが全てのアンアーカイブされたクラスをNSSecureCoding
に準拠するのに必要とするかどうかを指し示します。
class func unarchiveObject (with: Data) -> Any?
NSKeyedArchiver
and stored in a given NSData
object.
以前にNSKeyedArchiver
によってエンコードされてある与えられたNSData
オブジェクトに格納されたオブジェクトグラフをデコードして返します。
class func unarchiveObject (withFile : String) -> Any?
NSKeyedArchiver
written to the file at a given path.
以前にNSKeyedArchiver
によってエンコードされてある与えられたパスでファイルに書き出されたオブジェクトグラフをデコードして返します。
func containsValue (forKey : String) -> Bool
func decodeDecodable <T>(T.Type, forKey : String) -> T?
func decodeTopLevelDecodable <T>(T.Type, forKey : String) -> T?
func decodeBool (forKey : String) -> Bool
func decodeBytes (forKey : String, returnedLength : UnsafeMutablePointer<Int>?) -> UnsafePointer<UInt8>?
func decodeDouble (forKey : String) -> Double
func decodeFloat (forKey : String) -> Float
func decodeInt32 (forKey : String) -> Int32
func decodeInt64 (forKey : String) -> Int64
func decodeObject (forKey : String) -> Any?
func finishDecoding ()
var decodingFailurePolicy : NSCoder.DecodingFailurePolicy
var delegate: NSKeyedUnarchiverDelegate?
class func setClass (AnyClass?, forClassName : String)
class func `class`(forClassName : String) -> AnyClass?
func setClass (AnyClass?, forClassName : String)
func `class`(forClassName : String) -> AnyClass?
NSKeyedUnarchiver
if there is a problem extracting an archive.
アーカイブから抜き出すことに問題があるならばNSKeyedUnarchiver
によって引き起こされる例外の名前。
class NSKeyedArchiver
protocol NSKeyedArchiverDelegate
protocol NSKeyedUnarchiverDelegate
class NSCoder
class NSSecureUnarchiveFromDataTransformer