Будучи реалистичным, любая ситуация, которая приведет к тому, что NSTevenDirectory вернет ноль, скорее всего, будет означать, что вы все равно ничего не сможете сохранить самостоятельно.
, т. Е. Это может означать, что устройство заполненоили что произошла какая-то форма повреждения.
Как таковая, я подозреваю, что вам следует придерживаться использования NSTevenDirectory (зачем все-таки заново изобретать колесо) и относиться к нему, возвращающему ноль как к эффективному значению, что вы не можетезапись в локальное хранилище.