首页 > 解决方案 > QFile 不允许更改文件的权限

问题描述

我创建 QFile 并设置这样的权限:

/*Reading information to file*/
file.setPermissions(QFile::ReadOwner | QFile::ReadOther | QFile::ReadGroup | QFile::WriteOwner | QFile::WriteOther | QFile::WriteGroup)
file.close()

比我将此文件作为资源文件并将其连接到我的项目。但是这样的事情:

QFile file{ R"(:/text/TextInformation/Matters)" };
qDebug() << file.permissions() << '\n';

给我这样的输出:

QFlags(0x4|0x40|0x400|0x4000)

另一个问题:如果我现在尝试更改权限,我会失败。在我的资源文件的属性中,我允许读取和写入它。我现在如何更改权限(或者如何在 QFile::WriteOnly 模式下打开此文件)?

标签: c++qtqfile

解决方案


修改编译到可执行文件中的资源是不可能的——如果你想修改这样的文件,你必须将它写出文件系统并在那里修改。


推荐阅读