c# - online - notacion cientifica fisica
Doble formato de notación cientÃfica 10ma potencia C# (2)
Estoy teniendo double value = 30308950000;
Quiero mostrarlo como 3.03x10^10
¿Cómo puedo lograrlo usando C #?
Yo he tratado
double value = 30308950000;
Console.WriteLine(value.ToString("0.###E+0", CultureInfo.InvariantCulture));
salida = 3.03E+10
No quiero el formato 3.03E+10
, pero 3.03x10^10
. Gracias
Solución fácil:
double value = 30308950000;
Console.WriteLine(
value.ToString("0.###E+0", CultureInfo.InvariantCulture)
.Replace("E-","x10^-")
.Replace("E+","x10^"));
¡Griten a Jon Skeet! :)
Lamentablemente, NumberFormarInfo no proporciona ningún parámetro ExponentialSign .
Es decir, el especificador de formato exponencial (E) utiliza solo información de NegativeSign, NumberDecimalSeparator y PositiveSign de NumberFormarInfo .
Para hacerlo "en el patrón" , debe usar su propia implementación de ICustomFormatter como aquí .