我正在编写一个程序来保存文本文件,用户可以在其中输入文件名。我已经打开一个窗口来设置文件名,但是一旦我点击保存,就会出现错误:“ QFSFileEngine :: open:未指定文件名”
我已经编写了用于指定目录和文件名的代码,并且可以正常运行,但是一旦尝试并让用户输入文件名,我将无法再将文件保存到任何目录,并且会收到上述错误消息。
//////这是使我得到错误的代码:
void MainWindow::on_pushButton_clicked()
{
QFile file;
QString filename = QFileDialog::getSaveFileName(this, tr("save
document"), QDir::currentPath(), tr("documents(*.txt"));
if(!file.open(QFile::WriteOnly | QFile::Text)){
QMessageBox::warning(this, "title", "file not open");
}
}
//////这是有效的代码:
void MainWindow::on_pushButton_clicked()
{
QFile file("C:/Users/orlan/Desktop/test");
if(!file.open(QFile::WriteOnly | QFile::Text)){
QMessageBox::warning(this, "title", "file not open");
}
}
预期结果是用户使用选定名称保存文件,但实际结果是错误消息:“ QFSFileEngine :: open:未指定文件名”并且没有文件被保存。