如何格式化数字?

How do I format a number?

如何按照以下方式格式化数字?

输入:

123

输出:

1.2-3

在 C# 中,有一个 ToString() 整数类型的重载来完成这项工作:

123.ToString(@"0\.0-0"); //output 1.2-3

Qt中有这样的东西吗?我确实阅读了 QString 文档,但无法做到这一点。

没有用于将整数格式化为字符串的内置函数,但您可以通过自己的自定义函数执行自定义格式设置。

例如,您可以这样做:

int number = 123;
QString s = QString("%1.%2-%3").arg(
    QString::number((number / 100) % 10),
    QString::number((number / 10) % 10),
    QString::number(number % 10));

或:

QString s = QString::number(123);
s.insert(1, QChar('.'));
s.insert(3, QChar('-'));