Qt 前位补0 的几种方法:
1. arg
在Qt中 arg(整数类型,补位数,进制,补位字符) 有很多的重载函数。整数类型、浮点、long等等;
QString QString::arg(qulonglong a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char( ' ' )) const
//arg(整数类型,补位数,进制,补位字符);
例子:
实现将17转为0017。
//10进制数 17 4位 前位补0 strNew = "0017" QString str= QString::number(17); //10进制,debug出来 strNew = “0017” QString strNew = QString("%1").arg(str.toInt(), 4, 10, QLatin1Char('0')); //16进制 QString strNew16 = QString("%1").arg(str.toInt(), 4, 16, QLatin1Char('0'));
这种方法使用比较简单灵活。
2.sprintf
QString 的方法sprintf 格式化的方法:像C语言一样一个古老的方法。
%02d:0代表补位的值为零、2表示位数。
strNumber = strNumber.sprintf("%02d:%02d:%02d", hour, minute, seconds);
https://blog.csdn.net/liuzhezhe111/article/details/82155078