Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Ошибка Set_file: Cannot open file ''. Godot Engine

Данила Русанов Знаток (299), открыт 16 часов назад
из-за этой ошибки у меня не работают новые строчки кода (старые работают)
Полная ошибка:
E 0:00:01:0151 set_file: Cannot open file ''.
<Ошибка C++> Condition " file.is _null()" is true.
<Исходный код C++>modules/theora/video_stream_theora.cpp:174 @ set_file()
Есть предположение что эта ошибка связана с разрешением на редактирование файла (когда я в атрибутах файла убираю галочку только для записи она ставится обратно)
1 ответ
ЖЕПО андернеко Мудрец (15163) 15 часов назад
Ошибка set_file: Cannot open file '' в Godot Engine может указывать на несколько возможных проблем, связанных с работой с файлом. В вашем случае, если ошибка возникает при попытке записи или чтения из файла, а также связана с правами доступа, это может означать несколько вещей.
Возможные причины ошибки:

Проблемы с правами доступа: Если при снятии галочки "только для чтения" в свойствах файла она снова ставится, это может быть связано с ограничениями операционной системы или программой, которая управляет правами доступа. Попробуйте выполнить следующие шаги:
Убедитесь, что у вас есть права на запись в директорию, в которой находится файл.
Если работаете в системе Linux или macOS, попробуйте использовать команду chmod для изменения прав на запись:

chmod +w /путь/к/файлу

В Windows попробуйте запустить Godot от имени администратора.

Проблемы с путем к файлу: Ошибка указывает на то, что путь к файлу пустой (''). Возможно, вы неправильно указываете путь к файлу, либо переменная для пути не инициализирована.

Убедитесь, что в коде правильно задан путь к файлу. Например:


         var file = File.new()  

if file.open("res://path_to_file.txt", File.READ) == OK:

# Операции с файлом

else:

print("Ошибка открытия файла!")

Проблема может быть также связана с неверным указанием относительного или абсолютного пути. Важно, чтобы путь был корректным относительно структуры проекта.

Использование сторонних библиотек (например, Theora): Если ошибка возникает в контексте работы с видео (например, с библиотекой Theora, как указано в сообщении об ошибке), возможно, сам файл видео поврежден или недоступен. Попробуйте:
Проверить, что файл существует по указанному пути.
Проверить, не используется ли файл в другом процессе, что может мешать его доступу.

Кеширование в Godot: Иногда могут быть проблемы с кешированием ресурсов. Попробуйте перезапустить Godot, очистить кеш (в настройках) или заново загрузить проект.

Как решить:

Проверьте путь к файлу в коде.
Убедитесь, что у вас есть права на запись и чтение этого файла.
Перезапустите Godot, очистите кеш и убедитесь, что файл доступен.
Проверьте, не используется ли файл сторонним приложением (например, если это видеофайл).
Похожие вопросы