当我试图使用Qt删除刚下载的文件时,遇到了一个奇怪的问题。 我的代码: QString location = "/path/to/app/Application.app"; QFile *rmFile = new QFile(location); rmFile->remove(); 文件没有被删除。 有什么想法可能是错的吗?
如果您要处理的是目录,可以使用Qt 5中的以下API: bool QDir::removeRecursively() 而不是使用QFile。因此,您需要编写类似于以下内容的代码:QString location = "/path/to/app/Application.app"; QDir *rmDir = new QDir(location); rmDir->removeRecursively(); 请注意,仅仅为了这个简单的情况,我个人不会使用堆对象。栈对象就足够了。
if(!rmFile->remove()) qDebug() << rmFile.errorString();
此外,在这种特殊情况下,该实例使用过度了。你可以直接调用静态方法。 - László Papp