C++利用QFile做一个日志系统,可以定期三天删除三天前的日志,实例
时间: 2023-05-15 17:07:21 浏览: 161
可以使用QFile和QTextStream来实现一个简单的日志系统,代码如下:
```cpp
#include <QFile>
#include <QTextStream>
#include <QDateTime>
void writeLog(const QString& message)
{
QString fileName = "log.txt";
QFile file(fileName);
if (!file.open(QIODevice::WriteOnly | QIODevice::Append | QIODevice::Text))
return;
QTextStream out(&file);
out << QDateTime::currentDateTime().toString(Qt::ISODate) << " " << message << "\n";
file.close();
// 删除三天前的日志
QDateTime threeDaysAgo = QDateTime::currentDateTime().addDays(-3);
if (file.exists() && file.lastModified() < threeDaysAgo)
file.remove();
}
```
在这个例子中,我们使用QFile和QTextStream来打开一个名为“log.txt”的文件,并将日志消息写入文件中。我们还使用QDateTime来获取当前日期和时间,并将其添加到日志消息中。
最后,我们检查文件是否存在,并检查其最后修改时间是否早于三天前。如果是,我们就删除文件。这样就可以实现一个简单的日志系统,可以定期删除三天前的日志。
相关推荐
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)