你可以使用 QFile 类来实现自动保存日志。首先,在你的代码中创建 QFile 对象:
QFile file("log.txt");
接下来,将文件打开以进行写入:
if (file.open(QIODevice::WriteOnly | QIODevice::Append)) {
QTextStream out(&file);
out << "This is a log message." << endl;
file.close();
}
上面的代码将向文件中添加一条日志消息。每次你需要记录一个新的日志消息时,只需重新打开文件并写入即可。
为了使你的程序自动保存日志,你可以将上述代码放在一个定时器函数中,并在一定时间间隔内调用该函数以写入日志。例如,以下代码将每10秒记录一次日志:
void MainWindow::startLogging()
{
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(writeLog()));
timer->start(10000); // 10 seconds interval
}
void MainWindow::writeLog()
{
QFile file("log.txt");
if (file.open(QIODevice::WriteOnly | QIODevice::Append)) {
QTextStream out(&file);
out << "This is a log message." << endl;
file.close();
}
}
当你启动此应用程序时,它将开始自动记录日志。如果你需要更多的灵活性,你可以根据自己的需要更改日志文件名和时间间隔。