Come si fa a sapere se è necessario utilizzare NSArchiver o NSKeyedArchiver? Qual è la differenza?NSArchiver vs. NSKeyedArchiver
10
A
risposta
12
NSArchiver
supporta i Key-less metodi di codifica come –encodeObject:
o –decodePoint
, mentre NSKeyedArchiver
supporta i metodi basati su chiave di codifica come –encodeObject:forKey:
o –decodePointForKey:
. La differenza principale è che sugli archiviatori è necessario decodificare le cose esattamente nello stesso modo in cui le hai codificate. Ogni tasto può essere decodificato esattamente una volta. Gli archivisti con chiave, d'altra parte, non ti limitano a nessun ordine e puoi decodificare liberamente lo stesso oggetto più volte.
Se possibile, utilizzare NSKeyedArchiver
. È più recente e probabilmente sostituirà la variante non basata su chiave.
Inoltre, NSArchiver non è disponibile per le app per iPhone. –