Qt显示没有指数格式的双号

时间:2014-01-25 16:06:08

标签: c++ qt

假设我有一个双号:1679616。当我尝试将文本设置为标签时,数字显示为1.67962e+06。有没有办法让数字显示为没有指数格式?

如果我使用:QString::number(result, 'f', 2)将数字转换为字符串,一切正常,但如果该数字在该点之后有两位数以上怎么办?我知道我可以将它设置为10例如,但是你知道这不是我想做的事情。我希望如果数字 82348.12323 显示,因为它。如果它是234.2,我只需要一个数字。

1 个答案:

答案 0 :(得分:2)

以下示例对我来说非常有用:

double a1 = 82348.12323;
double a2 = 234.2;

QString s1 = QString::number(a1, 'g', 10);
QString s2 = QString::number(a2, 'g', 10);

qDebug() << "s1:" << s1;
qDebug() << "s2:" << s2;

输出:

s1: "82348.12323" 
s2: "234.2"