CLR: .Net / Mono / Boo / Otros CLR > C#

 Problemas Al Pasar De Decimal A String

(1/1)

Mr. Blers:
Estoy teniendo problemas a la hora de pasar un número en formato decimal a string. El problema es que estoy perdiendo precisión. Estoy utilizando la función ToString("e") porque el formato lo quiero en exponencial.

Por ejemplo tengo un decimal cuyo valor es "1110111.2" cuando lo paso a string:

string lcadena = val.ToString("e");

El valor que tiene lcadena es: "1.110111E+006"

Si nos fijamos he perdido el 2 del final.

He leido en msdn y por lo visto solo puedo tener seis número decimales (en los ejemplos que pone tb está truncando).
¿Alguien sabe como no perder precision y cuando lo pase a string tenga TODOS los decimales?

También he probado con la función Parse de decimal, con el CultureInfo, he intentado de todo y he buscado por la red y no he conseguido nada.

Gracias por adelantado.

JuanK:
porque no usas un dato tipo double?

Mr. Blers:
Estoy utilizando decimal porque "recojo" datos de SQL server de tipo decimal. Tengo variables donde almaceno el valor devuelto. Me interesa por causas ajenas a esto que siga siendo decimal hasta la conversión a string.

¿Si lo paso previamente a double sigo teniendo la misma precisón? ¿De double a string se mantiene la misma precisión?

Gracias.

Navegación

[0] Índice de Mensajes

Ir a la versión completa