Преобразование двойного числа в экспоненциальное представление с определенным числом после запятой

Я хочу преобразовать double в научную нотацию следующим образом:

-0.00752382528 => -.752383E-1

Могу ли я сделать это с помощью .ToString() или Regex?


person Community    schedule 15.09.2014    source источник
comment
-.752383E-1 не является правильным научным обозначением - даже если бы это было так, оно не соответствует исходному значению.   -  person D Stanley    schedule 15.09.2014
comment
msdn.microsoft.com/en-us/ библиотека/dwhawy9k%28v=vs.110%29.aspx   -  person Hans Passant    schedule 15.09.2014
comment
@DStanley, вы правы, но это преобразование выполняется в старом программном обеспечении, и я должен его переписать.   -  person    schedule 15.09.2014


Ответы (1)


Вы можете использовать строку стандартного формата. для научной нотации:

(-0.00752382528).ToString("E5")   // returns "-7.52383E-003"

или если вам не нужны начальные нули в показателе степени, используйте собственная строка:

(-0.00752382528).ToString("0.00000E0")   // returns "-7.52383E-3"
person D Stanley    schedule 15.09.2014
comment
Я знаю это форматирование строк, но мне нужно преобразовать, как описано в ответе. я думаю, что мне нужно написать собственный метод, чтобы сделать это. - person ; 15.09.2014