我必须向我的大学教授发送一个 C++ 项目。
该项目使用 QWidget、c++ 类和两个 .txt 文件,用作存储我的信息的“数据库”。
当我打开项目时,QList 会自动填充存储在 .txt 文件中的数据。
问题是,如果我希望项目使用其中的数据,我必须将 .txt 文件放在构建目录中。
有没有办法将 .txt 文件放入存储所有 .cpp 和 .h 文件的目录中?
我用来打开文件的代码是:
std::ifstream in("file.txt");
但这只有在构建目录中才能打开文件。我想更改项目查找文件的路径。
谢谢
如果您不考虑重复问题中提到的手动路径规范,我建议您使用QStandardPaths
这样的
auto dbFilePath = QStandardPaths::locate(QStandardPaths::AppDataLocation, "file.txt", QStandardPaths::LocateFile);
或/和QCoreApplication::applicationDirPath
。
使用其中之一或基于这两个编写一些逻辑来独立于当前工作目录定位文件。请注意,在这些情况下,您需要预安装文件,然后您可以将这些文件作为资源一起发送。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句