Я пробовал много вещей, но они не работали.
Я использую Qt 5.9.1, и я хотел бы открыть файл .txt (который находится в файле qrc) в переменной QFile, например:
QFile file(":/txt/config");
Я также пытался использовать
QFile file("qrc:/txt/config");
Вот файл qrc (суммированный):
<qresource prefix="/txt">
<file alias="config">resources/files/config.txt</file>
</qresource>
Мой .pro имеет INCLUDEPATH += .
Я уже пытался:
Build -> Clean all
Build -> Run qmake
Build -> Build all
И это ничего не изменило, при каждом запуске у меня есть такой вывод:
QIODevice::read (QFile, ":/txt/config"): device not open
Путь в .qrc правильный, QtCreator находит файл, когда я просматриваю каталоги и открываю его в редакторе, как обычный текстовый файл.
Спасибо за вашу помощь, и извините за мой английский … (и функция редактирования не позволяет мне добавлять привет всем наверху, поэтому я говорю это здесь :))
Вы не можете открыть файл ресурса для записи, так как содержимое встроено в двоичный файл приложения. Вы должны открыть это только для чтения:
QFile file(":/txt/config");
if(!file.open(QIODevice::ReadOnly)) {
qDebug() << "error: " << file.errorString();
}
Других решений пока нет …