qt中的资源文件有困难

时间:2012-01-01 19:27:53

标签: qt

在使用Qt Creator并开发我的项目时,我已经将包含一些信息的txt文件添加到资源文件中。我认为这个文件将被合并到exe文件中,我不必用我的exe文件提供这个文件。现在我正在运行我项目的这个exe文件,我得到的信息是找不到txt文件(尽管通过Qt creator运行时一切都运行正常)。有没有办法让它工作,所以我不必提供这个txt文件与我的程序?
编辑:
资源文件:

<RCC>
    <qresource prefix="/settings">
        <file>Resources/setting_files/accepted_file_extensions.txt</file>
    </qresource>
</RCC>

我正在访问它:

boost::filesystem3::ifstream fin("./Resources/setting_files/accepted_file_extensions.txt");

1 个答案:

答案 0 :(得分:0)

当您在Qt Creator中运行时,它会起作用,因为工作目录是您拥有Resources文件夹的位置。 Boost ifstream不会从你的exe中读取资源,而是读取磁盘上的真实文件。 Boost对Qt资源一无所知(也不应该)。相反,使用QResource从您的exe中读取资源数据,或使用QFile将其读取为文件(通过在:前面添加前缀)。