Foros del Web » Programación para mayores de 30 ;) » Java »

Formato del separador decimal

Estas en el tema de Formato del separador decimal en el foro de Java en Foros del Web. Qué tal chicos, llevo horas tratando de que mi programa me devuelva un numero con un formato decimal correspondiente ("##,##0.00") Esto es lo que he ...
  #1 (permalink)  
Antiguo 27/05/2012, 20:33
Avatar de edbc92  
Fecha de Ingreso: octubre-2010
Ubicación: Lima - Los Olivos
Mensajes: 93
Antigüedad: 13 años, 6 meses
Puntos: 5
Exclamación Formato del separador decimal

Qué tal chicos,

llevo horas tratando de que mi programa me devuelva un numero con un formato decimal correspondiente ("##,##0.00")

Esto es lo que he puesto de código:

Código Javascript:
Ver original
  1. DecimalFormat f =new DecimalFormat("##,##0.00");

El problema es que cuando ejecuto el programa, el número que me devuelve es (ejemplo: 22.216,31) cuando en realidad quiero que me devuelva asi: 22,216.31

Consideraciones
Estuve mirando mi configuración regional porsiacaso, pero de todas maneras todo está normal mi separador decimal es (.) y mi separador de miles es (,).

Espero sus comentarios porfa! Se los agradeceré!
__________________
"Por medio de la perseverancia el caracol llegó al arca."
CHARLES SPURGEON
  #2 (permalink)  
Antiguo 28/05/2012, 01:48
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Formato del separador decimal

El Locale es así de puñetero, depende de si tienes Locale("en") o Locale("es") te sale una cosa u otra.

si no funciona el método applyPattern te aconsejo que crees un metodo que compruebe el formato, por ejemplo con una expresión regular, y si no tiene el adecuado hacer un replace de puntos por comas y de comas por puntos (para evitar solapamientos tienes dos opciones, o bien sacar la parte decimal con un split e incrustarla después con una coma, o utilizar un caracter intermedio que sepas q no se va a utilizar, por ejemplo "/" para sustituir el elemento de la parte decimal antes de hacer el replace).
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}

Etiquetas: decimalformat, decimalformatsymbol, formato, numero
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:17.