Ich bin derzeit in Lesen und Schreiben in eine PLIST-Datei. Hier ist mein aktueller Stand: Ich habe eine Plist-Datei mit dem Namen "Scores.plist" erstellt und sie in meinen Resources-Ordner für mein xcode-Projekt gestellt. Innerhalb der PLIST-Datei enthält ein Wörterbuch mit dem Schlüssel "Score". Das an den Schlüssel angehängte Objekt ist eine NSNummer mit einem Platzhalterwert von 1010. Wenn ich meinen Code ausführe, bekomme ich merkwürdige Ergebnisse. Ist mein PLIST am falschen Ort? Ich höre, dass die PLIST in einigen Dokumenten-Verzeichnis, zum Lesen und Schreiben. Ich bin mir aber nicht sicher, wo genau das ist. Jede Hilfe wird geschätzt. Danke im Voraus! :)Schreiben und Lesen von einer Plist-Datei
-(void)writeToPlistHighScore:(int)scoreNumber {
//attempt to write to plist
//however both the nslog's in this first section result in "null"
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"Scores.plist"];
//NSString *scorePath2 = [[NSBundle mainBundle] pathForResource:@"Scores" ofType:@"plist"];
NSDictionary *plistDict = [[NSDictionary dictionaryWithContentsOfFile:filePath] retain];
NSLog(@"%@",[plistDict objectForKey:@"Score"]);
[plistDict setObject:[NSNumber numberWithInt:scoreNumber] forKey:@"Score"];
[plistDict writeToFile:filePath atomically: YES];
NSLog(@"%@",[plistDict objectForKey:@"Score"]);
[plistDict release];
//Stable code for reading out dictionary data
//this code reads out the dummy variable in Scores.plist located in my resources folder.
// Path to the plist (in the application bundle)
NSString *scorePath = [[NSBundle mainBundle] pathForResource:@"Scores" ofType:@"plist"];
NSDictionary *plistData = [[NSDictionary dictionaryWithContentsOfFile:scorePath] retain];
NSString *scoreString = [NSString stringWithFormat:@"Score:%@", [plistData objectForKey:@"Score"]];
NSLog(@"%@",scoreString);
//checking to see where my file is...
//this logs a file path which I don't know means
NSError *error;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory2 = [paths objectAtIndex:0];
NSString *path = [documentsDirectory2 stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.plist",@"Scores"]];
NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath: path]){
NSLog(@"File don't exists at path %@", path);
NSString *plistPathBundle = [[NSBundle mainBundle] pathForResource:@"Scores" ofType:@"plist"];
[fileManager copyItemAtPath:plistPathBundle toPath: path error:&error];
}else{
NSLog(@"File exists at path:%@", path);
}
}