Странная ошибка при переименовании файла с помощью NSFileManager - PullRequest
0 голосов
/ 10 сентября 2010

Я использовал следующее для переименования файла aplist с различными введенными пользователем значениями (BOOL, в основном строки):

    [manager moveItemAtPath:oldPath toPath:newPath error:&error];

И по какой-то причине в iOS4 + это дает сбой, поэтому я пытаюсь сделать следующее:

 [1]  [manager copyItemAtPath:oldPath toPath:newPath error:&error];
 [2]  [manager removeItemAtPath:oldPath error:&error];

Теперь [1] правильно копирует список и ВСЕ данные.(Я проверял при комментировании [2]. Но по какой-то причине, когда я пытаюсь [1] & [2], файл / появляется / переименовывается, однако, пропускаются только определенные поля, например, I FName и LNameоставайтесь нетронутыми, тогда как Phone1, Phone2, Email1, Email2 и Website удаляются из нового файла.

Насколько я понимаю, я просто не могу понять, почему при попытке сохранить только некоторые данныеa removeFileAtPath для СТАРОГО файла ПОСЛЕ создания НОВОГО ФАЙЛА?

Любая помощь будет НАМНОГО ЦЕНА!

Я просто хочу переименовать файл plist, сохраняя ВСЕ файлыданные в такте.

1 Ответ

1 голос
/ 20 ноября 2010
NSString *newPath = [[oldPath stringByDeletingLastPathComponent] stringByAppendingPathComponent:newFilename];

[[NSFileManager defaultManager] movePath:oldPath toPath:newPath handler:nil];
...