Я использую этот метод для копирования файла:
[fileManager copyItemAtPath:sourcePath toPath:targetPath error:&error];
Я хочу перезаписать файл, когда он уже существует. Поведение этого метода по умолчанию заключается в том, чтобы выдать исключение/ошибку "Файл существует". когда файл существует. Нет возможности указать, что он должен быть перезаписан.
Итак, какой был бы самый безопасный способ сделать это?
Я должен сначала проверить, существует ли файл, а затем удалить его, а затем попытаться скопировать? Это может привести к тому, что приложение или устройство выключится прямо в наносекунду после удаления файла, но новый файл не был скопирован в это место. Тогда ничего.
Возможно, мне сначала нужно будет изменить имя нового файла, а затем удалить старый, а затем изменить имя нового? Та же проблема. Что делать, если в этот наносекунд приложение или устройство выключится, а переименование не произойдет?