C++ Qt指定特定应用程序数据的位置

C++ Qt指定特定应用程序数据的位置,c++,qt,C++,Qt,我正在申请Qt。我有两个目录,一个用于配置,另一个用于程序脚本 我想让它说,当我构建项目时,它会将这些目录放在某个目录中 例如,在linux上: /home/username/.project_name/configurations /home/username/.project_name/scripts 这也应该是跨平台的,因此在Windows和MacOS上,这些文件应该放在存储应用程序数据的正常位置 有没有办法指定这些目录(以及其中的文件)应该放在哪里?它是项目文件中的一个选项吗?哪个选项

我正在申请Qt。我有两个目录,一个用于配置,另一个用于程序脚本

我想让它说,当我构建项目时,它会将这些目录放在某个目录中

例如,在linux上:

/home/username/.project_name/configurations
/home/username/.project_name/scripts
这也应该是跨平台的,因此在Windows和MacOS上,这些文件应该放在存储应用程序数据的正常位置


有没有办法指定这些目录(以及其中的文件)应该放在哪里?它是项目文件中的一个选项吗?哪个选项?

qt资源系统用于在应用程序的可执行文件中存储文件

您需要回答两个问题:

  • 这些文件来自哪里?您的安装程序或软件包是否包含它们,或者它们是否在可执行文件中,并且应用程序会提取并保存它们。那么qt资源系统是有用的

  • 如何获取创建配置目录所需的路径
    QDesktopServices::storageLocation(QDesktopServices::DataLocation)
    以跨平台的方式返回这样的路径


  • 在构建时放置配置文件有点奇怪。如果应用程序在用户第一次运行它时设置它的配置文件等,这不是更有意义吗?我想是的。主要的一点是,我如何能够指定将应用程序的某些文件/目录放在哪里。通过Qt资源系统,或者其他一些方法。