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

qstring 的arg问题。

7
回复
12707
查看
[复制链接]
累计签到:2 天
连续签到:1 天
来源: 2015-1-6 14:18:28 显示全部楼层 |阅读模式
5Qter豆
  1. int a = 9;
  2.     qDebug()<<QString("%1").arg(a,2,10);
复制代码
我希望能够qstring为:09
如同c语言里面%02d,一样,指定位数,高位不足用0补上。
我没找到用哪个。。。
qDebug()<<QString("%1").arg(a,2,10,'0');也不对。

最佳答案

查看完整内容

caiwei_cs,您好! 请使用QString.sprintf()进行C语言模式的格式化处理; 例如: dayQString.sprintf("%4d%02d%02d",year,month,day); 祝好运! begboy
回复

使用道具 举报

尚未签到

2015-1-6 14:18:29 显示全部楼层
本帖最后由 begboy 于 2015-1-6 15:04 编辑

caiwei_cs,您好!
    请使用QString.sprintf()进行C语言模式的格式化处理;
    例如:
    dayQString.sprintf("%4d%02d%02d",year,month,day);

祝好运!
begboy
   

点评

喔,还有这种方法,学习了!  发表于 2015-1-6 15:09
回复

使用道具 举报

累计签到:597 天
连续签到:1 天
2015-1-6 15:01:28 显示全部楼层
使劲戳这里,希望有所帮助
回复

使用道具 举报

累计签到:2 天
连续签到:1 天
2015-1-6 15:12:01 显示全部楼层
shasidaran 发表于 2015-1-6 15:01
使劲戳这里,希望有所帮助

这个不通用啊。不过谢谢了。
回复

使用道具 举报

累计签到:2 天
连续签到:1 天
2015-1-6 15:12:35 显示全部楼层
begboy 发表于 2015-1-6 15:01
caiwei_cs,您好!
    请使用QString.sprintf()进行C语言模式的格式化处理;
    例如:

哦。真不知道这个。学习了。谢谢啊。
回复

使用道具 举报

尚未签到

2015-1-6 17:01:52 显示全部楼层
互相学习,请不用客气。

begboy
回复

使用道具 举报

累计签到:2 天
连续签到:1 天
2017-5-4 16:25:56 显示全部楼层
楼主用arg能成功了不?我也是试了半天也不行。只好用sprintf了……
回复

使用道具 举报

累计签到:3 天
连续签到:1 天
2017-5-5 11:50:05 显示全部楼层
qDebug()<<QString("%1").arg(a,2,10,QChar('0));
看看QString::arg的文档,后面应该加上,QChar('0)就可以了,表示空的地方,补‘0‘’’
回复

使用道具 举报

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

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