Social

jueves, 18 de abril de 2013

Java: Convertir Date a String

Para convertir un objeto del tipo Date a String debemos tomar en cuenta que java usa siempre un formato por default. Por suerte existe la clase DateFormat que tiene varias implementaciones pero en este caso la veremos con SimpleDateFormat. Estas clases nos permiten convertir un objeto Date a String usando un formato o sintaxis que se adecue a nuestra necesidades.

El siguiente ejemplo muestra el cambio de la fecha actual a varios formatos:


El código anterior nos permite obtener la fecha y la hora, pero se pueden obtener los minutos, los segundos, el año y cualquier otro tipo de información que este dentro de la fecha. El resultado del código anterior es el siguiente:


En la siguiente imagen se pueden observar algunos ejemplos de SimpleDateFormat con sus resultados en String.


11 comentarios :

  1. hola necesiito la fecha pero que todo este en texto nueve de julio de dos mil trece q formato puedo utilizar...

    ResponderEliminar
    Respuestas
    1. Lo que mas se asemeja a lo que preguntas es la instancia DateForamt.FULL, pero no lo transforma por completo. Si utilizas el siguiente:

      Date fecha = new Date();
      DateFormat formato = DateFormat.getDateInstance(DateFormat.FULL);
      System.out.println(formato.format(fecha));

      Obtendrías algo como:
      martes 9 de julio de 2013

      Los números tendrías que manejarlos por aparte.

      Eliminar
  2. Me gustaría sabes si es posible transformar un string de una fecha ejemplo 23-1-2015 que es string que esta almacenado en una base de datos a un date para después poder compararlo con la fecha actual y si es posible me dirías como??

    ResponderEliminar
    Respuestas
    1. tengo el mismo problema en el ultimo ejercicio que estoy haciendo. Te agradeceria que me explicaras si ya lo solucionaste

      Eliminar
    2. Hola,

      En estos casos deberías usar DateFormat valido para esa fecha. Por ejemplo para 23-1-2015 usarias algo como esto:

      DateFormat fechaHora = new SimpleDateFormat("yyyy-M-dd HH:mm:ss");

      Nota que es yyyy-M-dd con una M.

      Saludos.

      Eliminar
  3. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  4. Me gustaría sabes si es posible transformar un string de una fecha que esta almacenado en una base de datos por ejemplo Wed Mar 27 15:30:29 2019 a un date para después poder compararlo con la fecha actual... es posible ?

    ResponderEliminar
  5. hola. necesito cambiar la hora( el formato es HH:MM) en un string para leerlo en un PLC porque no puedo leer directamente el tiempo. de que manera lo puedo hacer? por ejemplo estoy leendo una hora en concreto( 12:30) y la quero pasar a srtring, asi la puedo leer en el PLC.

    ResponderEliminar