qDebug 消息格式化输出至文件

简述

在平时调试时,我们一般选择用qDebug 打印输出我们需要的消息,但当程序发布以后的问题追踪,qDebug 很明显不够用,它的消息输出以后无法保存,也没有日期时间,以及日志输出位置的标注。这时候就需要我们改造一下它了。先格式化输出,格式化输出有两种方法,先看第一种。

格式化输出一

自定义一个消息器(其实就是一个回调函数)

#include "stdio.h"
#include "stdlib.h"
#include <QString>
#include <QMessageLogContext>

void myMessageOutput(QtMsgType type, const QMessageLogContext &context, const QString &msg)
{
   
    QByteArray localMsg = msg.toLocal8Bit();
    switch (type) {
   
    case QtDebugMsg:
        fprintf(stderr, "Debug: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context.line, context.function);
        break;
    case QtInfoMsg:
        fprintf(stderr, "Info: %s (%s:%u, %s)\n", localMsg.constData(), context.file, context
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值