2016-06-18 14 views
1

Ich habe eine sehr einfache Frage, ich kann einfach keine richtige Antwort finden. Das istüber NSKeyedArchiver archiveRootObject: toFile:

[NSKeyedArchiver archiveRootObject:value toFile:filePath]; 

nach Apfel Dokumentation here, die obigen Funktion:

Archiv eines Objektgraph zu einem bestimmten Objekt verankert, indem sie in Objekt eines Datums codiert, dann atomar schreibt das resultierende Datenobjekt einen Datei an einem bestimmten Pfad und gibt einen booleschen Wert zurück, der angibt, ob die Operation erfolgreich war.

Meine Frage ist, wenn ich diese Funktion mehrmals mit demselben Dateipfad aufrufen, überschreibt es den vorherigen Wert in dieser Datei? Kann ich mit dieser Funktion ein leeres Array in die Datei schreiben?

+1

Haben Sie es versucht? – rmaddy

+0

Probieren Sie es aus, wie @rmaddy es vorschlägt. So einfach ist das. Wie auch immer, die Antwort auf beide Fragen lautet ja und ja. Es überschreibt die Datei, so dass sie den Wert überschreibt. Wie für das leere Array - leere Array ist ein Array und ist ein Root-Objekt, so dass Sie es mit dieser Funktion schreiben können. – mrvincenzo

Antwort

2

Ja, es überschreibt den vorherigen Wert, und ja, Sie können ein leeres Array in die Datei schreiben, indem Sie diese Funktion verwenden.

Die Implementierung dieser Methode interessiert sich nicht für das, was da ist, es überschreibt, was auch immer es ist.