Я новичок в объективе c, и проблема, с которой я столкнулась, заключается в том, что мой «scores.xml» не перезаписывается, как только я попытаюсь его сохранить. Я импортировал «scores.xml» в свой проект, но он не перезаписывается, как только я пытаюсь это сделать. Что я делаю не так? У кого-нибудь есть идеи?Объект c: Невозможно перезаписать файл с массивом
- (void) writeHighScores:(NSString *)PlayerName{
NSString *highscorePath = [[NSString alloc]init];
NSArray * paths = [[NSBundle mainBundle] pathsForResourcesOfType: @".xml" inDirectory:@""];
for (NSString * path in paths)
{
highscorePath = [path substringToIndex:([path length])];
}
NSMutableArray *arrayFromFile = [NSMutableArray arrayWithContentsOfFile:highscorePath];
for (NSMutableArray *element in arrayFromFile){
if (score > [[element objectAtIndex:1] intValue]){
[element replaceObjectAtIndex:0 withObject:PlayerName];
[element replaceObjectAtIndex:1 withObject:[NSString stringWithFormat:@"%d", score]];
break;
}
}
NSLog(@"Highscore path = %@",highscorePath);
// Write array
[arrayFromFile writeToFile:highscorePath atomically:YES];
}
Добавить код для подтверждения возвращаемого значения; 'if (! [arrayFromFile writeToFile: ...]) {NSLog (@" writeToFile failed! "); } '. Одной из причин этого отказа является то, что массив не содержит только * объектов списка свойств * (подробнее см. Ссылку). – trojanfoe
@trojanfoe или, возможно, вы не можете просто писать файлы здесь и там, как думает OP. – 2013-02-08 16:57:17
Но опять же, [это было задано много, много раз ...] (http://stackoverflow.com/questions/5853014/writing-into-a-file-objective-c) – 2013-02-08 16:58:34