Por Chaitanya Singh | Filed Under: Fecha de Java
En este tutorial veremos cómo convertir una cadena a Date en Java.
Convertir Cadena a Fecha: Función
Después de esta sección he compartido un ejemplo completo para demostrar la conversión de cadena a fecha en varios formatos de fecha. Para aquellos que sólo quieren una función para esta conversión, aquí está el código de función:
public Date convertStringToDate(String dateString){ Date date = null; Date formatteddate = null; DateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); try{ date = df.parse(dateString); formatteddate = df.format(date); } catch ( Exception ex ){ System.out.println(ex); } return formatteddate;}
Programa de ejemplo para la conversión de cadena a fecha
paquete beginnersbook.com;importar java.text.DateFormat;importar java.text.SimpleDateFormat;importar java.util.Date;public class StringToDateDemo{ public static void main(String args[]) { String testDateString = "02/04/2014"; String testDateString2 = "02-04-2014 23:37:50"; String testDateString3 = "02-Abr-2014"; String testDateString4 = "04 02, 2014"; String testDateString5 = "Thu, Apr 02 2014"; String testDateString6 = "Thu, Apr 02 2014 23:37:50"; DateFormat df = nuevo SimpleDateFormat("dd/MM/aaaa"); DateFormat df2 = nuevo SimpleDateFormat("dd-MM-aaaa HH:mm:ss"); DateFormat df3 = nuevo SimpleDateFormat("dd-MMM-yyyy"); DateFormat df4 = nuevo SimpleDateFormat("MM dd, yyyy"); DateFormat df5 = nuevo SimpleDateFormat("E, MMM dd yyyy"); DateFormat df6 = nuevo SimpleDateFormat("E, MMM dd yyyy HH:mm:ss"); pruebe el método { //format() Formatea una Fecha en una cadena de fecha/hora. Date d1 = df.parse(testDateString); System.out.println("Date: " + d1); System.out.println("Date in dd/MM/yyyy format is: "+df.format(d1)); Date d2 = df2.parse(testDateString2); System.out.println("Date: " + d2); System.out.println("Date in dd-MM-yyyy HH:mm:ss format is: "+df2.format(d2)); Date d3 = df3.parse(testDateString3); System.out.println("Date: " + d3); System.out.println("Date in dd-MMM-yyyy format is: "+df3.format(d3)); Date d4 = df4.parse(testDateString4); System.out.println("Date: " + d4); System.out.println("Date in MM dd, yyyyy format is: "+df4.format(d4)); Date d5 = df5.parse(testDateString5); System.out.println("Date: " + d5); System.out.println("Date in E, MMM dd aaaa format is: "+df5.format(d5)); Date d6 = df6.parse(testDateString6); System.out.println("Date: " + d6); System.out.println("Date in E, E, MMM dd aaaa HH:mm:ss format is: "+df6.format(d6)); } catch (Excepción ex ){ System.out.println(ex); } }}
Salida:
Fecha: Wed Apr 02 00:00:00 IST 2014Fecha en formato dd/MM/aaaa es: 02/04/2014Fecha: Wed Apr 02 23:37:50 IST 2014Fecha en formato dd-MM-aaaa HH:mm:ss es: 02-04-2014 23:37:50Fecha: Wed Apr 02 00:00:00 IST 2014Fecha en formato dd-MMM-aaaa es: 02-Abr-2014Fecha: Wed Apr 02 00:00:00 IST 2014Fecha en formato MM dd, yyyy es: 04 02, 2014Fecha: Wed Apr 02 00:00:00 IST 2014Fecha en formato E, MMM dd yyyy es: Wed, Apr 02 2014Fecha: Wed Apr 02 23:37:50 IST 2014Fecha en formato E, E, MMM dd yyyy HH:mm:ss es: Wed, Apr 02 2014 23:37:50
Referencias:
- Java – Mostrar la hora en formato de 12 horas con AM/PM usando SimpleDateFormat
- Java – Convertir fecha en LocalDate
- Convertir la fecha en cadena en Java
- Cómo convertir String al formato de fecha y hora de 24 horas en java
- Java – Convertir LocalDate en LocalDateTime
- Java LocalDate – ejemplo del método atStartOfDay()
Comentarios
- Sagarika Rayudusays11 de febrero de 2015 a las 12:17 AM ¿Qué pasa si la fecha es de formato HTTP/1.1, es decir, además de df6 hay una zona horaria también? ¿Cómo convertimos una cadena a la fecha? EG: «Mon, Feb 9 2015 00:02:12 GMT»Responder
- Prabhatsays 16 de septiembre de 2015 a las 3:03 PMAll dados los matriales son alucinantes. Pero le pido, por favor, que publique los contenidos de primavera.
- Vikas Chauhansays18 de febrero de 2016 a las 7:52 AMHay una corrección en la siguiente declaración en su código:DateFormat df3 = new SimpleDateFormat(«dd-MMM-yyyy»);Use «dd-mm-yyyy» en lugar de dd-mmm-yyyy». Corrección en el formato del mes por favor corrígelo. Responde a las CMsaysYAMKUMAR el 18 de febrero de 2019 a las 3:30 AM»Fecha d2 = df2.parse(testDateString2);System.out.println(«Fecha: » + d2);System.out.println(«Fecha en formato dd-MM-yyy HH:mm:ss es: «+df2.format(d2));»El código anterior puede imprimir la Fecha en el formato dado pero no puede guardar la fecha en una variable.Responder