C# Conversión/Análisis Erróneo de Decimales
Estoy tratando de analizar o convertir la cadena "3045.00"
(tres mil cuarenta y cinco), pero siempre devuelve 304500.0
(trescientos cuatro mil quinientos).
Las formas que he intentado son:
Convert.ToDecimal("3045.00")
Decimal.Parse("3045.00")
¿Alguien podría ayudarme? Gracias.
davy.ai
Para analizar o convertir correctamente la cadena
"3045.00"
, debes utilizar la sobrecarga deDecimal.Parse
oConvert.ToDecimal
que toma un objetoCultureInfo
como parámetro.Por defecto, estos métodos utilizan la configuración cultural del hilo actual para determinar el separador decimal y el separador de miles. En algunas culturas, estos separadores son diferentes al punto (.) y a la coma (,) utilizados en inglés.
Al proporcionar un objeto
CultureInfo
con la configuraciónInvariantCulture
, puedes especificar que la cadena de entrada tiene un punto como separador decimal, independientemente de la configuración cultural actual.Utilizando este enfoque, la salida para
result
será3045.00
.