如何只显示前2位小数不等于0

Ale*_*mpu 6 c#

如何只显示2个非= 0小数的数字?

例:

对于0.00045578我想要0.00045而对于1.0000533535我想要1.000053

Guf*_*ffa 3

没有内置的格式。

您可以获取数字的小数部分并计算有多少个零,直到获得两位数字,然后将其组合在一起的格式。例子:

double number = 1.0000533535;

double i = Math.Floor(number);
double f = number % 1.0;

int cnt = -2;
while (f < 10) {
  f *= 10;
  cnt++;
}

Console.WriteLine("{0}.{1}{2:00}", i, new String('0', cnt), f);
Run Code Online (Sandbox Code Playgroud)

输出:

1.000053
Run Code Online (Sandbox Code Playgroud)

注意:给定的代码仅在数字实际存在小数部分时才有效,对于负数无效。如果您需要支持这些案例,您需要添加检查。