3

我有一个 Qt 应用程序,其中有大量数据存储在一个名为“Data”的文件夹中,该文件夹与应用程序 qrc 文件位于同一目录中。

我想以某种方式让应用程序知道在哪里可以找到这个文件夹。我不想将所有数据添加为资源文件,因为我希望能够在 Data 目录中添加和删除新数据文件,而不必每次都重新编译。我不想硬编码相对文件路径,因为执行目录可能会因操作系统、应用程序的启动方式等而有所不同,我不想硬编码绝对目录,因为如果应用程序是在不同的机器上编译。

如何让我的应用程序知道在哪里查找数据文件夹?整个项目的目录结构将是相同的,无论它在什么操作系统/机器上。

4

2 回答 2

3

应用程序目录可通过QCoreApplication.applicationDirPath()获得,可通过 global 获得qApp

  #include <QApplication>

  ...
  QString appDir = qApp.applicationDirPath();
于 2013-03-25T18:41:11.777 回答
0

有一个 xml 配置文件,其中包含 OS 应用程序的所有可能组合的列表以及要读取的相应路径。

在启动时读取配置文件并检查操作系统版本和其他配置以决定从读取的 xml 文件中使用哪个路径

于 2013-03-25T18:36:56.867 回答