2011-09-15 8 views
5

Estoy tratando de leer algunos datos de un archivo XML, los números se guardan en formas como "-2.000000e + 000"Cómo analizar un número como "-2.000000e + 000"

Traté de usar " double.Parse "pero devuelve el número como -2000000 !!!! ¿Puede alguien decirme qué estoy haciendo mal?

+3

duplicado Posible de http://stackoverflow.com/questions/64639/convert-from-scientific-notation-string-to-float-in-c ? – AlG

+1

y este http://stackoverflow.com/questions/3879463/c-parse-a-number-from-exponential-notation – Samich

+1

Es posible que también quiera consultar esta pregunta: http://stackoverflow.com/questions/ 147801/best-way-to-parse-float – Michael

Respuesta

9

Pass CultureInfo.InvariantCulture a la llamada a double.Parse:

double.Parse("-2.000000e+000", CultureInfo.InvariantCulture); 
+0

+1 Sí, exactamente la respuesta correcta –

+0

Thaaaaaanks que salvó mi día! –

Cuestiones relacionadas