Tecnología

Inicio

Cómo crear una fecha a partir de una cadena en Java

Cómo crear una fecha a partir de una cadena en Java


La forma más fácil de crear una fecha a partir de una cadena en Java es dejar que Sun Microsystems hacer el trabajo por usted. El uso de dos clases que son parte de la API de Java \ "util \" y \ "texto \" que ya están instalados en su sistema con el Kit de Desarrollo de Java, puede automatizar la conversión entre cadenas y fechas, con sólo unas pocas líneas de código .

Instrucciones

1 Crear un nuevo archivo de clase Java llamada \ "StringToDate.java \" utilizando el editor de texto o entorno de desarrollo de Java de su elección.

2 Agregue el código siguiente a la parte superior de su archivo de clase:

importación java.util.Date
IR
importación java.text.ParseException
IR
importación java.text.DateFormat
IR

Estas son las clases que necesitaremos utilizar de la API de Java a través de nuestro programa.

3 Agregue la siguiente debajo de sus declaraciones de importación.

/ **

Esta clase convierte las cadenas de fechas. @ Autor Kevin Walker
* /
StringToDate public class {

}

Todo el código irá entre los corchetes de apertura y cierre de esta clase.

4 Crear un método de lectura dentro de su clase:

/**
* Read the string and return it as a Date.
* @param d the string to parse
* @return the date.
*/
public static Date read(String s) throws ParseException {
DateFormat df = DateFormat.getDateInstance(DateFormat.Long, Locale.US)

IR

Date d = df.parse(s)

IR

return d

IR

}

Esto utiliza el método de análisis de la clase DateFormat para interpretar la cadena en una fecha, haciendo de este modo todo el trabajo duro para usted. La configuración regional es particularmente importante, ya que le dice qué estilo de Java puede esperar las fechas para estar en. La configuración regional de EE.UU. se esperan las fechas para estar en un formato mes-día-año, mientras que otros lugares pueden esperar un formato como día- mes-año o año-mes-día.

5 Crear un método principal para probarlo.

/**
* A sample application using the DateReader class.
* @param args This application doesn't receive command line arguments.
*/
public static void main(String[] args) {
String s = \"\"

IR
tratar {

String s = \"10/23/1997\"

IR

Date d = read(s)

IR

System.out.println(\"You entered the date: \" + d.toString())

IR

} catch (ParseException e) {
System.out.println(s + \" cannot be parsed as a date.\")

IR

}
}

Esto simplemente alimenta la función de lectura de una cadena para la fecha de 23 de octubre de 1997, y pide a la clase Fecha para darnos de nuevo una representación de cadena de esa fecha. En el caso de un error, el \ "ParseException \" será capturado y el programa le informará al usuario de que la fecha no es válida.

Consejos y advertencias

  • DateFormat.parse es un método de gran alcance que puede entender la mayoría de las formas de expresión de las fechas, pero no es infalible. Potencialmente se puede confundir, sobre todo cuando se lee estilos de fecha que no coinciden con la configuración regional especificada.