C++Qt5.9版本,代码实现同时保存dat格式文件和txt格式文件在同一个路径中,该路径只选择一次且文件名默认为当前时间。。
时间: 2024-10-19 07:08:42 浏览: 30
在C++ Qt 5.9版本中,你可以使用QFile和QDateTime类来同时保存`.dat`和`.txt`格式的文件,将文件存储在同一路径下,并且文件名由当前时间自动生成。以下是一个简单的示例代码:
```cpp
#include <QObject>
#include <QFile>
#include <QDateTime>
// 创建一个类用于保存文件操作
class FileSaver : public QObject
{
Q_OBJECT
public slots:
void saveFiles(const QString& filePath) {
// 获取当前时间并格式化为字符串作为文件名
QDateTime currentTime = QDateTime::currentDateTime();
QString fileName = "backup_" + currentTime.toString("yyyy-MM-dd_HH-mm-ss");
QFile datFile(filePath + ".dat");
if (datFile.open(QIODevice::WriteOnly | QIODevice::Text)) {
// 写入.dat文件内容
datFile.write("Data saved in .dat format.\n");
datFile.close();
} else {
qWarning() << "Failed to open .dat file for writing.";
}
QFile txtFile(filePath + ".txt");
if (txtFile.open(QIODevice::WriteOnly)) {
QTextStream out(&txtFile);
out << "Backup taken at: " << currentTime.toString("yyyy-MM-dd HH:mm:ss") << "\n";
out << "Data saved in .txt format.\n";
txtFile.close();
} else {
qWarning() << "Failed to open .txt file for writing.";
}
}
};
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 假设filePath是你想要保存文件的路径
FileSaver saver;
QString filePath = "C:/YourSavePath/"; // 替换为你实际的文件保存路径
saver.saveFiles(filePath);
return app.exec();
}
```
阅读全文