Qt中QString的arg()函数使用记录
QString::arg()//是用字符串变量参数依次替代字符串中最小数值
大致有如下3种用法:
(1)arg(str1, str2, str3)
其中一次可替换参数个数最多为9个,举例如下
QString str = QString("%1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11")
.arg("1","2","3","4","5","6","7","8","9")
输出为"1 2 3 4 5 6 7 8 9 %10 %11"
要想全部替换,只需要接在后面继续使用一个.arg(“10”,“11”)即可
也就是第二种方式
QString str = QString("%1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11")
.arg("1","2","3","4","5","6","7","8","9").arg("10","11")
(2)arg(str1).arg(str2).arg(str3)
与第一种方式类似,需要注意的是替换的顺序是按照参数"1%",“2%”,“3%”,“4%”…的***从小到大的顺序***依次替换。举例如下:
str = QString("%1%2").arg("hello").arg("world")
输出为"helloworld"
str = QString("%1%2").arg("%1world").arg("hello");
输出:“helloworld%2”
str = QString("%1%2").arg("%2world").arg("hello");
输出:“helloworldhello”
str = QString("%1%2").arg("%3world").arg("hello");
输出:"%3worldhello"
str = QString("%1%2").arg("%4world").arg("hello");
输出:"%4worldhello"
str = QString("%-1%2").arg("%4world").arg("hello");
输出:"%-1helloworld"
(3)arg(int, int, int)
第一个int参数表示要处理的数字,第二个int参数表示字宽,第三个int参数表示数字基数(进制数)。举例如下:
str = QString("十进制100的十进制为%1")
.arg(100,0,10);
输出:“十进制100的十进制为100”
str = QString("十进制100的十六进制为%1")
.arg(100,0,16);
输出:“十进制100的十六进制为64”