如何格式化具有固定有效位数的双精度数,而不考虑小数位?

g.p*_*dou 0 .net c#

也许我的措辞不太清楚,所以我尝试举例说明:

  • 如果我有一个像 123.4567 这样的双精度值,我想将其格式化为 123
  • 如果我有一个像 12.34567 这样的双精度值,我想将其格式化为 12.3
  • 如果我有一个像 1.234567 这样的双精度值,我想将其格式化为 1.23

当然,我可以使用 switch/case 语句来做到这一点,但我想知道是否有任何内置或实用程序格式,什么可以开箱即用地做到这一点。

提前致谢

Dmi*_*nko 5

使用G3格式说明符:

  String result1 = 123.4567.ToString("G3");
  String result2 = 1.234567.ToString("G3");
Run Code Online (Sandbox Code Playgroud)

或通过String.Format

  String result = String.Format("{0:G3}", 12.3456789);
Run Code Online (Sandbox Code Playgroud)