如何从指数表示法中去掉零

本文关键字:表示 指数 | 更新日期: 2023-09-27 18:19:50

我使用指数格式来格式化C#中的十进制数。例如,如果号码是

0.0001234567

使用格式化

(0.0000123456).ToString("E4");

显示

1.2345E-004

如何从指数中删除前导零,使其读数如下?

1.2345E-4

如何从指数表示法中去掉零

引用MSDN:

格式说明符的大小写指示是在指数前面加"E"还是"E"。指数总是由一个加号或减号和至少三位数字组成。如果需要,指数会填充零以满足此最小值。

这与标准数字说明符有关。

但是,使用自定义数字格式,您可以设置0的数量:

987654 ("#0.0e0") -> 98.8e4

就你的情况而言,这是

(0.0000123456).ToString("#0.0E0"); //12.3E-6

BobSort注释后编辑

如果你需要科学记数法,你可以指定你只需要小数前一位数字,如下所示:

(0.0000123456).ToString("0.00#E0"); //1.23E-5

假设您需要始终显示小数点后的4位数字,请尝试

"0.0000E+0"

所以它会显示

(0.0000123456).ToString("0.0000E+0"); //1.2345E-5 
(0.0000120000).ToString("0.#E+0");    //1.2000E-5

如果您不需要在小数点后显示4位数字,请使用

"0.#E+0"

所以它会显示

(0.0000123456).ToString("0.#E+0"); //1.2E-5
(0.0000120000).ToString("0.#E+0"); //1.2E-5