как я могу удалить нули из нотации экспоненты
Я использую экспоненциальное форматирование для форматирования десятичного числа в C#. Например, если число равно
0.0001234567
Форматирование с помощью
(0.0000123456).ToString("E4");
Показывает
1.2345E-004
Как я могу удалить ведущий ноль из экспоненты, чтобы он читался, как показано ниже?
1.2345E-4
2 ответа:
Предполагая, что вам нужно всегда показывать 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
Цитирование 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