2016-04-20 2 views
0

Как преобразовать двойное число в экспоненциальное обозначение в C#?как преобразовать из двойной в экспоненциальную нотацию в C#

Мой номер
Я хотел бы номер будет выглядеть следующим образом:

-1.6500000000000000e1

Я смотрит на статью:

C# how to convert a double to string with exponential notation

Но этот Ждут» t полностью ответит мне:

number.ToString("e16", CultureInfo.InvariantCulture) 

предоставить мне номер выглядит следующим образом:

-1.6500000000000000e+001 

Я хотел бы только в конце e1 для неотрицательного, или e1 для отрицательного

Спасибо!

+0

@LijuThomas Нет, прочитайте мой вопрос снова пожалуйста – Programmer

+0

Да, это обман. Просто замените E2 на E15 или около того. –

+0

@ HenkHolterman Но упомянутая проблема не решила меня, потому что я не решил мою проблему в конце exp. – Programmer

ответ

2

Попробуйте использовать форматирования:

Double value = -1.6500000000000000e1; 

    // e15 - exponential form, small "e" for exponent, 16 digits 
    String result = value.ToString("e16", CultureInfo.InvariantCulture); 

    Console.Write(result); 

Edit: в случае, если вы хотите "e1" форму экспоненты, вы должны указать это так:

String result = value.ToString("0.0000000000000000e0", CultureInfo.InvariantCulture); 
+0

Я получил -1.650000000000000e + 001 вместо того, чтобы получить в конце только e1 - как я могу ее решить? – Programmer

+0

@ Программист: затем немного измените формат (см. Мое редактирование) –