我需要将以下类型的十进制数转换为指数格式
数字0.00001
格式为0.01E-04
我使用以下方法:
string.Format("{0:E2}", dValue);
但这会返回0.01E-004
所以我需要在E
之后将位数限制为2。
这可能吗?如果是这样:怎么样?
答案 0 :(得分:9)
您需要使用自定义格式字符串来指定如何格式化小数:
string.Format("{0:0.##E+00}", dValue);
答案 1 :(得分:6)
我想你想要的东西:
string text = dValue.ToString("0.###E+00");
(更改#
个字符的数量,以便在 E之前更改的小数位数。)
您也可以通过调用string.Format
来使用复合格式说明符,但我个人会使用一个简单的格式,除非您需要将其他文本放在它周围,在这种情况下您可以使用类似的东西:
string text = string.Format("Before {0:0.0###E+00} After", dValue);