Ver Mensaje Individual
  #4 (permalink)  
Antiguo 15/03/2011, 09:49
JaimeLG
 
Fecha de Ingreso: marzo-2008
Mensajes: 22
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: Formatear fechas según Locale

Hola Paslopjo:

Al final no pude resolverlo de la forma que había planeado.

Lo que utilizo al final es esta función, que se basa en el SimpleDateFormat.

Código:
 public static String cambiarFormatoFecha (String fecha, String formatoOrig, String formatoFin){
    SimpleDateFormat sdf = new SimpleDateFormat(formatoOrig);
    try {
        Date fechaOrig = sdf.parse(fecha);
        sdf = new SimpleDateFormat(formatoFin);
        return sdf.format(fechaOrig);
    } catch (ParseException e) {
        return null;
    }
}
Seguramente se puede hilar más fino, buscando con la clase DateFormatterSymbols o algo así, los símbolos propios del locale que necesitas. Es posible que también puedas obtener el formato base del locale para DateTime de la clase DateFormat y con eso montar un SimpleDateFormat a conveniencia, de manera que sabiendo en qué orden se muestran el día, mes y año, luego tú le puedas indicar el número de dígitos que necesitas para cada parte de la fecha. Creo que ese patrón te lo devuelve DateFormat.getPattern o algo así. Hablo de memoria y a lo mejor no sirve porque al final tuve que abandonar la opción de ser perfeccionista y por temas de tiempo pasar a lo rápido y práctico aunque sea menos bonito.

Un saludo.