C++qt5.9版本不用选择打开文件位置直接保存文件到指定名称文件夹的相对路径
时间: 2024-09-23 16:05:02 浏览: 43
在C++ Qt5.9中,你可以使用QFileDialog和QFile类来实现在特定文件夹下保存文件的功能,而不需要用户手动选择文件位置。首先,你需要包含相应的头文件,并创建一个QFileDialog实例:
```cpp
#include <QApplication>
#include <QFileDialog>
#include <QFile>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QString selectedDirectory = QFileDialog::getExistingDirectory(nullptr,
"选择文件夹",
"."); // 默认当前目录
if (!selectedDirectory.isEmpty()) { // 如果选择了文件夹
QString filePath = QDir::cleanPath(selectedDirectory + "/filename.txt"); // 绝对路径加上指定文件名
QFile file(filePath);
if (file.open(QIODevice::WriteOnly | QIODevice::Text)) { // 打开文件进行写入
QTextStream out(&file);
out << "这是你要保存的内容"; // 写入数据
file.close(); // 关闭文件
qDebug() << "文件已成功保存至:" << filePath;
} else {
qDebug() << "无法打开文件,错误信息:" << file.errorString();
}
}
return app.exec();
}
```
在这个例子中,`QFileDialog::getExistingDirectory`用于获取指定的文件夹,然后将选定的目录与你想要的文件名组合成绝对路径。`QFile::open`函数用于打开并写入文件。
阅读全文