hola,
como puedo obtener la configuración del separador decimal de una máquina?
saludos!
| ||||
hola, necesito saber el separador de decimales que tiene la máquina para saber en que formato debo guardar los números en la BD. En mi aplicación utilizo el separador punto " . " pero si almaceno en la Bd un número con separador punto, y la máquina tiene una configuración de seprador de decimales coma "," , pues entonces me transforma los números. Es sólo por eso. Entonces antes de almacenar lo que quiero es hacer un replace del punto por el separador decimal de la máquina. Cita: He utilizado este código que me has dicho y no me devuelve el separador decimal de la máquina. Me devuelve el separador decimal que yo he asignado a mi aplicación. Para el separador de decimales: Thread.CurrentThread.CurrentCulture.NumberFormat.C urrencyDecimalSeparator |
| ||||
Cita: Eso es justamente a una de los “problemas” que me refería al trabajar con una cultura específica, si trabajaras con InvariantCulture, no tendrías que hacer ese tipo de cosas ...
Iniciado por freegirl En mi aplicación utilizo el separador punto “ . ” pero si almaceno en la Bd un número con separador punto, y la máquina tiene una configuración de seprador de decimales coma “,” , pues entonces me transforma los números. Es sólo por eso. Entonces antes de almacenar lo que quiero es hacer un replace del punto por el separador decimal de la máquina. Cita: Me imagino que antes de recuperar el separador decimal no estás cambiando la cultura de tu aplicación, es decir:
Iniciado por freegirl He utilizado este código que me has dicho y no me devuelve el separador decimal de la máquina. Me devuelve el separador decimal que yo he asignado a mi aplicación.
Código:
' En mi caso muestra: "es-PE" y "." MsgBox(System.Threading.Thread.CurrentThread.CurrentCulture.ToString) MsgBox(System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencyDecimalSeparator) ' Luego de cambiar la cultura, muestra: "es-ES" y "," System.Threading.Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("es-ES") MsgBox(System.Threading.Thread.CurrentThread.CurrentCulture.ToString) MsgBox(System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencyDecimalSeparator) Última edición por xknown; 22/05/2005 a las 12:17 |
| ||||
Cita:
Iniciado por xknown Me imagino que antes de recuperar el separador decimal no estás cambiando la cultura de tu aplicación, es decir: resulta que lo hize a la inversa y por eso no me funcionaba, y claro, después pensando ya me dí cuenta que era por eso ![]() Lo primero que hago es mirar que separador tiene la máquina y ya lo almaceno en una variable pública. El código lo tengo puesto en el Load del Formulario principal. saludos! |