ifstream 无法在 Qt 5.5.0 窗口中打开

ifstream can't open in Qt 5.5.0 windows

本文关键字:窗口 ifstream Qt      更新时间:2023-10-16

两年前,我在ubuntu上用Qt 5.0.2开发了一个应用程序。我用这个代码打开我的文件,它工作得很完美。我也在windows上试过,它可以工作。

QString file = inAlgorithm->getFile().absoluteFilePath();
stream.open(file.toStdString());
if(!stream.fail())
{
 ...
}

现在在windows的Qt 5.5.0上,相同的代码不起作用。如果我选择磁盘D中的文件,则流失败。但是,如果我在磁盘C中选择一个文件,应用程序崩溃,我得到这个消息:my_program.exe[3332]中发生了一个未处理的win32异常。我试着用Qt 5.0.2运行,但我得到同样的问题。

我该如何解决这个问题?

我发现了问题。问题不是来自代码,而是来自qt creator中的shadow选项。我关闭了它,现在它工作了。我不知道为什么。第二个问题:当我从磁盘C打开文件时,它可以工作,但不能从我的磁盘d打开。这是因为我有一个带有口音的文件夹(我是法国人)。