none
Convertir un String a decimal RRS feed

  • Pregunta

  • Hola buenas cojo un valor string de la Base de Datos  y si el valor por ejemplo es 0.250 al convertir a decimal me saca 250. Si el valor por ejemplo es 2.5 me lo convierte bien pero si el valor es con cero primero no me coje ni el cero ni el punto.

    La manera que convierto el valor es: Convert.ToDecimal(Valor);

    Saludos  y gracias.

    viernes, 19 de junio de 2015 12:18

Respuestas

  • Deberías indicarle el formato numérico a utilizar al convertir (en este caso el separador decimal a utilizar):

    NumberFormatInfo format = new NumberFormatInfo() { NumberDecimalSeparator = "." };
    Convert.ToDecimal(valor, format);

    • Marcado como respuesta alvpjs viernes, 19 de junio de 2015 12:42
    viernes, 19 de junio de 2015 12:28
  • hola

    este es n problema con la cultura que se define en el sitio, podrias usar

    string numero = "0.250";  
    
    decimal val = Convert.ToDecimal(numero, CultureInfo.CreateSpecificCulture("en-US"));


    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta alvpjs viernes, 19 de junio de 2015 12:42
    viernes, 19 de junio de 2015 12:33

Todas las respuestas

  • Deberías indicarle el formato numérico a utilizar al convertir (en este caso el separador decimal a utilizar):

    NumberFormatInfo format = new NumberFormatInfo() { NumberDecimalSeparator = "." };
    Convert.ToDecimal(valor, format);

    • Marcado como respuesta alvpjs viernes, 19 de junio de 2015 12:42
    viernes, 19 de junio de 2015 12:28
  • hola

    este es n problema con la cultura que se define en el sitio, podrias usar

    string numero = "0.250";  
    
    decimal val = Convert.ToDecimal(numero, CultureInfo.CreateSpecificCulture("en-US"));


    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta alvpjs viernes, 19 de junio de 2015 12:42
    viernes, 19 de junio de 2015 12:33
  • Gracias a los dos.

    viernes, 19 de junio de 2015 12:42