Używam NSKeyedArchiver do zapisania NSDictionary danych mojej aplikacji do systemu plików.
NSMutableData *data = [[NSMutableData alloc] init];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
[archiver encodeObject:myAppsDictionary forKey:kDataKey];
[archiver finishEncoding];
BOOL success = [data writeToFile:[self dataFilePath] atomically:YES];
Czy istnieje prosty sposób na dołączenie numeru wersji?do tego pliku danych bez dodawania obiektu do samego NSDictionary? Czy mogę po prostu wstawić wiersz przed finishEncoding, który będzie zawierał klucz / wartość numeru wersji? By encodeInt32: forKey: praca? A może jest sposób bardziej przyjazny dla Cocoa?
Odpowiedzi:
2 dla odpowiedzi № 1Uważam, że twoja propozycja jest w porządku.
Pomocny może się okazać ten dokument Apple: http://bit.ly/2T2cSg
Fragment: „Możesz po prostu zakodować liczbę całkowitą lub ciąg znaków„ wersja ”za pomocą jakiegoś klucza lub w rzadkich przypadkach możesz chcieć, aby obiekt słownika był pełen gadżetów.”