使用qInstallMsgHandler将日志保存到文件
1 在main函数之前定义回调函数
void myMessageOutput(QtMsgType type,
const
char *msg)
{
QString text;
switch (type)
{
case QtDebugMsg:
text = QString("Debug: %1").arg(msg);
break;
case QtWarningMsg:
text = QString("Warning: %1").arg(msg);
break;
case QtCriticalMsg:
text = QString("Critical: %1").arg(msg);
break;
case QtFatalMsg:
text = QString("Fatal: %1").arg(msg);
abort();
}
QFile file("111.txt");
file.open(QIODevice::WriteOnly | QIODevice::Append);
QTextStream ts(&file);
ts<<text<<endl;
}
2 在main函数中注册myMessageOutput
qInstallMsgHandler(myMessageOutput);
3 注册后,在该程序的任何地方使用即可。
qDebug("This is a debug message");
qWarning("This is a warning message");
qCritical("This is a critical message");
qFatal("This is a fatal message");
本文介绍如何使用Qt的消息处理函数qInstallMsgHandler来自定义日志输出方式,并通过示例代码展示了如何将不同类型的日志(调试、警告、严重、致命)写入到本地文件。
1597

被折叠的 条评论
为什么被折叠?



