【发布时间】:2019-10-14 02:48:47
【问题描述】:
摘自我的代码:
char msg[80];
sprintf(msg, "Chuck Temperature: %.1f °C", temperature);
ui.TemperatureLabel->setText(QString::fromUtf8(msg));
我得到了什么:
什么不起作用:
将度数符号 (°) 替换为 °同时将 textFormat 设置为 RichText。它显示为“卡盘温度:°C”。
添加
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));根本没有帮助。
我在 Visual C++ 下工作,如果这很重要的话。
【问题讨论】:
-
您确定您的源文件是 UTF-8 编码的吗?您确定您的编译器支持 UTF-8 编码的源文件吗?建议在 ""u8 字符串中使用通用字符名称,以将这些变量排除在等式之外。
-
如何在""u8字符串中使用通用字符名?
-
点赞
"This is a degree character \u00B0"u8。 -
你的输出字体支持那个码位吗?
-
@n.m. - 这没有帮助
标签: c++ visual-studio utf-8 qt5