这段代码:
QString output("test1\ntest2");
qDebug() << output;
导致此输出:
"test1\ntest2"
我想要的是:
"test1
test2"
那么如何使用qDebug()
(以及类似的输出函数)来打印包含多行换行符的QString
?
最佳答案
qDebug()
用于调试目的,因此它转义不可打印的字符并在打印 QString
、QByteArray
、QChar
参数时添加引号。
尝试使用 qDebug().noquote()
因为这会禁用转义不可打印的字符,如下所示:
QString output("test1\ntest2");
qDebug().noquote() << output;
警告:
qDebug()
、qInfo()
、qWarning()
、qCritical()
和 qFatal()
都是为 debugging purposes 提供的.它们并不是要在生产代码中向用户显示某些内容。
请不要使用这些方法,除非您正在打印/记录一些调试语句。
关于c++ - 如何使用 qDebug 打印包含换行符的 QString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39560530/