我想使用以下内容格式化QString:
QString("%1000%2").arg("ABC", "DEF");
我希望输出为"ABC000DEF"
,但实际上是"%1000ABC"
。
我怎样才能克服困难?
答案 0 :(得分:6)
它没有看到“%1”“000”“%2”,它看到“%10”“00”“%2”(位置标记从1到99)
解决方法可能是
QString("%1%2%3").arg("ABC", "000", "DEF");
答案 1 :(得分:2)
另一种解决方法是使用replace
而不是arg
,它不会更改原始格式字符串,但需要更多输入:
QString("%1000%2").replace("%1", "ABC").replace("%2", "DEF");