Anteriormente en mi blog ya te mostré cómo formatear la fecha y hora actual en Java.

Ahora en este post te enseñaré a crear un objeto de tipo LocalDateTime a partir de una fecha como cadena o String.

Con lo que te enseñaré podrás crear un LocalDateTime a partir de una String y con el formato que tú quieras.

String a LocalDateTime con Java

Veamos cómo convertir la cadena a un LocalDateTime. Para esto debemos crear un formateador según el formato de nuestra cadena.

En mi caso tengo la siguiente fecha y hora como cadena: 2022-08-05 22:51:53 y quiero convertirla a un LocalDateTime desde un String.

El formato es yyyy-MM-dd HH:mm:ss (justo aquí debes cambiar el formato si es que el tuyo es distinto) así que creamos un formateador:

DateTimeFormatter formateador = new DateTimeFormatterBuilder()
  .parseCaseInsensitive()
  .append(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))
  .toFormatter();

Y ahora al parsear nuestra fecha invocamos a LocalDateTime.parse con la fecha como cadena y nuestro formateador.

Poniendo todo junto

El código final de ejemplo queda así:

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeFormatterBuilder;

class Main {
  public static void main(String[] args) {
		String fechaCadena = "2022-08-05 22:51:53";
		DateTimeFormatter formateador = new DateTimeFormatterBuilder().parseCaseInsensitive().append(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")).toFormatter();
		LocalDateTime fecha = LocalDateTime.parse(fechaCadena, formateador);
		System.out.println(fecha);
  }
}

Declaramos la fecha como cadena (esta podría venir de una base de datos, entrada por teclado, archivo de texto, etcétera), luego indicamos el formateador y finalmente creamos nuestro LocalDateTime.

Recuerda que ahora ya tendremos la fecha como LocalDateTime dentro de la variable fecha y ya podemos trabajar con ella como lo que es y no como una simple cadena.

Aquí te dejo más tutoriales de Java.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto