Com convertir una cadena en un objecte DateTime a Java

Com Convertir Una Cadena En Un Objecte Datetime A Java



Durant la programació en Java, de vegades, és possible que hàgiu de realitzar la conversió d'objectes String to date. Tot i que no hi ha cap mètode predefinit a Java per al propòsit especificat, encara es poden utilitzar diversos mètodes per convertir una cadena en un objecte DateTime.

Aquest bloc explicarà els procediments per a la conversió de String a un objecte DateTime a Java.

Com convertir String en objecte DateTime a Java?

Per convertir una cadena en un objecte DateTime a Java, podeu utilitzar:







  • Classe SimpleDateFormat
  • Classe LocalDate
  • Classe ZonedDateTime

Vegem com les classes esmentades ajuden a convertir una cadena en un objecte DateTime.



Mètode 1: Converteix String en objecte DateTime mitjançant la classe SimpleDateFormat

Per convertir una cadena en un objecte DateTime, podeu utilitzar el Java ' SimpleDateFormat ” classe. Amb aquesta classe, es pot analitzar una cadena a l'objecte DateTime requerit amb l'ajuda del mètode 'parse()'.



Sintaxi
Aquí teniu la sintaxi del mètode parse() de la classe SimpleDateFormat:





sf. analitzar ( 'Cadena de data i hora' ) ;

El ' sf ' és l'objecte de la classe SimpleDateFormat que invoca el ' analitzar () ” passant una cadena en format DateTime.

Exemple
Primer, crearem una instància de la classe SimpleDateFormat i passarem un format de data i hora com a paràmetre:



SimpleDateFormat sf = nou SimpleDateFormat ( 'dd-MM-aaaa;HH:mm:ss' ) ;

Utilitzeu un bloc try-catch en el qual primer heu de crear un objecte del ' Data 'classe anomenada' data i hora ”. Aquest objecte emmagatzemarà la data analitzada com una cadena mitjançant el mètode parse() i després imprimeix l'objecte convertit DateTime amb el ' System.out.println() ” mètode:

provar {
Data data i hora = sf. analitzar ( '19-08-2022; 01:34:23' ) ;
Sistema. fora . imprimirln ( data i hora ) ;
} agafar ( ParseException e ) {
i. printStackTrace ( ) ;
}

La sortida donada indica que la cadena s'ha convertit correctament en un objecte DateTime:

Ara, vegem com funciona la classe LocalDate per convertir una cadena en un objecte DateTime.

Mètode 2: Converteix String en objecte DateTime mitjançant la classe LocalDate

Una altra classe popular de DateTime a Java és ' LocalDateTime ”. El format del seu objecte comprèn ' T ”, que representa “ Temps ” i actua com a punt de separació entre data i hora.

Sintaxi
La sintaxi indicada a continuació es pot seguir per utilitzar el mètode parse() de la classe LocalDate:

LocalDateTime. analitzar ( 'Cadena de data i hora' ) ;

Aquí, la classe LocalDate anomena ' analitzar () ” passant una cadena DateTime per convertir-la en un objecte DateTime.

Exemple
Primer crearem un objecte de la classe LocalDateTime anomenat ' data i hora ' i analitzeu l'argument String especificat amb l'ajuda del ' analitzar () ” mètode:

LocalDateTime dataTime = LocalDateTime. analitzar ( '2022-08-19T02:30:45' ) ;

Finalment, imprimiu el resultat ' data i hora ” objecte a la consola:

Sistema. fora . imprimirln ( data i hora ) ;

Sortida

Mètode 3: Converteix String en objecte DateTime mitjançant la classe ZonedDateTime

De vegades, necessitem informació de la zona horària amb DateTime. Amb aquest propòsit, Java admet una classe anomenada ' ZonedDateTime ” que obté les zones horàries actuals mentre es treballa amb data i hora. Aquesta classe també utilitza el ' analitzar () ” amb la classe ZonedDateTime per analitzar una cadena i convertir-la en un objecte DateTime.

Sintaxi
Per utilitzar la classe ZonedDateTime, seguiu la sintaxi donada:

ZonedDateTime. analitzar ( 'Cadena de data i hora' ) ;

Aquí, la classe ZonedDateTime invoca el ' analitzar () ” passant una cadena per convertir-la en un objecte DateTime.

Exemple
En primer lloc, crearem un objecte de la classe ZonedDateTime anomenat ' zona ' i crida al ' analitzar () ” passant-hi una cadena DateTime com a argument. La cadena especificada representa la data i l'hora del ' Amèrica ' fus horari:

ZonedDateZona horària = ZonedDateTime. analitzar
( '2022-08-19T02:56:45.513464300-05:00[Amèrica/Chicago]' ) ;

Imprimeix l'objecte convertit DateTime:

Sistema. fora . imprimirln ( zona ) ;

Com podeu veure, l'objecte convertit DateTime es mostra amb la informació de la zona horària:

Hem recopilat tota la informació necessària per convertir una cadena en un objecte DateTime a Java.

Conclusió

Per convertir una cadena en un objecte DateTime, s'utilitzen diverses maneres en Java, com ara la classe SimpleDateFormat, la classe LocalDate i la classe ZonedDateTime. Aquestes classes formen part dels paquets Java.time i Java.util. Per convertir una cadena utilitzant aquestes classes, executeu el ' analitzar () ” passant una cadena com a argument. Aquest bloc va explicar els procediments per convertir una cadena en un objecte DateTime a Java amb exemples adequats.