Problem mit NSKeyedArchiver

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Problem mit NSKeyedArchiver

    Zum Montag Abend auch gleich mal wieder ein Problem...
    Ich möchte in einer kleineren App ein Array mittels NSKeyedArchiver in einer Datei speichern. Das habe ich in früheren Apps auch schon öfters gemacht und das hat alles ganz gut funktioniert. Dieses Mal irgendwie nicht.
    In der Konsole wirft er während des Speichervorgangs das hier aus (die Datei wird einfach nicht erstellt):

    Quellcode

    1. -[Transfer encodeWithCoder:]: unrecognized selector sent to instance 0x2000f3ca0
    2. -[Transfer encodeWithCoder:]: unrecognized selector sent to instance 0x2000f3ca0
    3. -[NSKeyedArchiver finalize]: warning: NSKeyedArchiver finalized without having had -finishEncoding called on it.

    Die Klasse, die dem Array als Objekt hinzugefügt wird und das NSCoding-Protokoll hat:

    Quellcode

    1. #import <Cocoa/Cocoa.h>
    2. @interface Mod : NSObject <NSCoding>
    3. {
    4. }
    5. @property (retain) NSMutableArray *transferArray;
    6. @property (retain) NSString *name;
    7. @property int status;
    8. @end
    Alles anzeigen


    Quellcode

    1. #import "Mod.h"
    2. @implementation Monat
    3. @synthesize transferArray;
    4. @synthesize name;
    5. @synthesize status;
    6. - (void)encodeWithCoder:(NSCoder *)encoder;
    7. {
    8. [encoder encodeObject:
    9. self.transferArray forKey:@"transferArray"];
    10. [encoder encodeObject:
    11. self.name forKey:@"name"];
    12. [encoder encodeInt:self.status
    13. forKey:@"status"];
    14. }
    15. - (id)initWithCoder:(NSCoder *)decoder;
    16. {
    17. if ( ![super init] )
    18. return nil;
    19. self.transferArray = [decoder decodeObjectForKey:@"transferArray"];
    20. self.name = [decoder decodeObjectForKey:@"name"];
    21. self.status = [decoder decodeIntForKey:@"status"];
    22. return self;
    23. }
    24. @end
    Alles anzeigen


    Gespeichert wird das Array so:

    Quellcode

    1. BOOL result = [NSKeyedArchiver archiveRootObject:
    2. array toFile:dateipfad];


    Naja... vielleicht hat jemand ne Idee, woran die Fehlermeldung liegen könnte.
    Danke im voraus,
    Osxer