Я хочу сохранить вывод qDebug() в файле журнала и отобразить его на консоли, я пробовал с этим:
qDebug() << "Hand up!";
QTextStream stream(stdout);
QTextStream out(&logFile);
out << stream.readAll();
но он вообще не работает, даже если я заменю stdout
на stderr
Вы можете установить обработчик сообщений, который вы создали, здесь есть отличный минимальный пример: Nokia Wiki: как перенаправить вывод qDebug в файл. Это позволит вам использовать вызовы qDebug() как обычно и выводить их, и вы можете настроить сообщение так, как оно будет выписано.
Используйте класс QDebug
вместо использования qDebug()
.
qDebug()
создает объект отладки с настройками по умолчанию, например, для отправки выходной строки. Если вы создаете объект самостоятельно, у вас есть больше контроля над ним.