找回密码
 立即注册
收起左侧

中文最后一个字符乱码

8
回复
9398
查看
[复制链接]

尚未签到

来源: 2016-6-9 18:41:00 显示全部楼层 |阅读模式
1Qter豆

回复

使用道具 举报

尚未签到

2016-6-9 18:42:49 显示全部楼层
大神们我遇到了中文乱码的问题
curFile = tr("未命名文档%1.txt").arg(sequenceNumber++);
里面未命名文档中个最后一个档字是乱码,但是如果前面任意位置打了档字就不会
curFile = tr("未命名文档档%1.txt").arg(sequenceNumber++);
回复

使用道具 举报

尚未签到

2016-6-9 18:46:25 显示全部楼层
版本是Qt5.6版本,在线等挺急的,以前没出过这样的错误,还有之前遇到
QString fileName = QFileDialog::getSaveFileName(this,tr("另存为..."),curFile);
之中,另存为我加了三个点,不然只是另存为 就会报错,常量里有换行符
回复

使用道具 举报

尚未签到

2016-6-9 18:51:20 显示全部楼层
图片在这里  求回答,真的挺急的,这个星期得学会然后做大作业,谢谢了大神们

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

累计签到:9 天
连续签到:1 天
2016-6-9 22:02:50 显示全部楼层
试试把 tr 换成 QStringLiteral 呢
回复

使用道具 举报

尚未签到

2016-6-9 22:37:36 显示全部楼层
xus 发表于 2016-6-9 22:02
试试把 tr 换成 QStringLiteral 呢

依旧没用呀,直接全部乱码了
回复

使用道具 举报

尚未签到

2016-6-9 22:38:32 显示全部楼层
xus 发表于 2016-6-9 22:02
试试把 tr 换成 QStringLiteral 呢

好像符号前面的中文就乱码
回复

使用道具 举报

累计签到:344 天
连续签到:1 天
2016-6-10 20:46:19 显示全部楼层
curFile = QString("未命名文档%1.txt").arg(sequenceNumber++);  不知道这样可以不?
回复

使用道具 举报

累计签到:8 天
连续签到:1 天
2016-6-10 21:24:07 显示全部楼层
有两种方法解决:
1.字符串全部用英文,然后用Linguist进行翻译
2.解码,中文是需要解码的,解码就变成了"英文".
   this->setWindowTitle(QString::fromLocal8Bit("你好吗?")+QString::number(123));
   tag:解码函数不能解QString::tr()类型的值
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了