我正在尝试读取已添加到项目资源中的 csv 文件。 然而,当我尝试打开该文件时,它失败了。
std::ifstream csvFile;
csvFile.open(fileName);
这就是我尝试打开它的方法。资源中的其他文件都可以(所有其他文件都是图像,并且它们加载和显示正确)。 我正在使用 Qt5.7 和 Qt Creator 4.0.2
有什么提示吗?
最佳答案
失败的原因是 Qt 资源并不是真正的文件,可以由每个处理文件的工具打开。相反,添加到 Qt 项目资源的文件内容为 built into生成的可执行文件。
好消息是 Qt 具有允许您像使用真实文件一样使用这些资源的功能:
QString myResourceFile = ":/resources/file.csv";
QFile file(myResourceFile);
if (file.open(QIODevice::ReadOnly)) {
QByteArray contents = file.readAll();
// process file's contents
}
else {
// Whoops, something went wrong, bad path to resource?
}
关于c++ - 从 Qt 资源加载 Csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45431919/