C# String Formatting For A Number Using Scientific Notation
This example shows how to format a number using scientific notation. To do this, you can use string.Format method.
Samples:
double number1 = 12345.67890123;
Console.WriteLine("Default Format: " + number1);
Console.WriteLine("Scientific Notation: " + string.Format("{0:#.##E+0}", number1));
Console.WriteLine();
int number2 = 123456789;
Console.WriteLine("Default Format: " + number2);
Console.WriteLine("Scientific Notation: " + string.Format("{0:#.##E+0}", number2));
Console.WriteLine();
double number3 = 12345.67890123;
Console.WriteLine("Default Format: " + number3);
Console.WriteLine("Scientific Notation: " + string.Format("{0:#.##E+00}", number3));
Console.WriteLine();
Output is like below:
Default Format: 12345.67890123 Scientific Notation: 1.23E+4 Default Format: 123456789 Scientific Notation: 1.23E+8 Default Format: 12345.67890123 Scientific Notation: 1.23E+04
In your examples, the output shows 2 to 3 significant digits only, where are the rese of the digits? Example, if the value is: 12345.67890123 it is no good to display it as 1.23E+4 – How to display the full number?
Try to change the string format(##).