2012-03-24 13 views
-4

Ich habe versucht:Wie speichere ich eine benutzerdefinierte NSObject-Klasse in einer Datei?

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:dictionary]; 

    BOOL success = [data writeToFile:entryPath atomically:YES]; 

Aber aus welchem ​​Grund auch immer, stürzte es mit diesem Fehler:

2012-03-24 20:06:13.550 Journal[1348:707] -[JEntry encodeWithCoder:]: unrecognized selector sent to instance 0x25d1a0 
2012-03-24 20:06:13.553 Journal[1348:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[JEntry encodeWithCoder:]: unrecognized selector sent to instance 0x25d1a0' 

Wie sonst speichere ich eine NSObject Unterklasse in eine Datei?

Antwort

3

Sie müssen encodeWithCoder: in Ihrer JEntry Klasse implementieren, wenn Sie NSArchiver arbeiten möchten. Sie werden wahrscheinlich auch initWithCoder: möchten, damit Sie später deserialisieren können.

Lesen Sie die Archives and Serializations Programming Guide, um loszulegen.

Verwandte Themen