Een tekenreeks converteren naar een DateTime-object in Java

Een Tekenreeks Converteren Naar Een Datetime Object In Java



Tijdens het programmeren in Java moet u soms String-to-date objectconversie uitvoeren. Hoewel er in Java geen vooraf gedefinieerde methode is voor het gespecificeerde doel, kunnen er toch verschillende methoden worden gebruikt om een ​​string om te zetten in een DateTime-object.

In deze blog worden de procedures uitgelegd voor de conversie van String naar een DateTime-object in Java.

Hoe tekenreeks naar DateTime-object in Java te converteren?

Voor het converteren van een String naar een DateTime-object in Java, kunt u het volgende gebruiken:







  • klasse SimpleDateFormat
  • LocalDate klasse
  • ZonedDateTime klasse

Laten we eens kijken hoe de genoemde klassen helpen bij het converteren van een String naar een DateTime-object.



Methode 1: tekenreeks converteren naar DateTime-object met behulp van SimpleDateFormat Class

Voor het converteren van een String naar een DateTime-object, kunt u de Java “ SimpleDateFormat ' klas. Met behulp van deze klasse kan een String worden geparseerd in het vereiste DateTime-object met behulp van de methode 'parse()'.



Syntaxis
Hier is de syntaxis van de methode parse() van de klasse SimpleDateFormat:





sv. ontleden ( 'DateTime-tekenreeks' ) ;

De ' sf ” is het object van de klasse SimpleDateFormat die de “ ontleden() ”-methode door een tekenreeks in een DateTime-indeling door te geven.

Voorbeeld
Eerst zullen we een instantie van de klasse SimpleDateFormat maken en een datum- en tijdnotatie doorgeven als parameter:



SimpleDateFormat sf = nieuwe SimpleDateFormat ( 'dd-MM-jjjj;UU:mm:ss' ) ;

Gebruik een try-catch blok waarin je eerst een object van de “ Datum ” klasse met de naam “ datum Tijd ”. Dit object slaat de geparseerde datum op als een tekenreeks met behulp van de methode parse() en drukt vervolgens het geconverteerde DateTime-object af met de ' Systeem.uit.println() methode:

proberen {
Datum datum Tijd = sv. ontleden ( '08-19-2022; 01:34:23' ) ;
Systeem. uit . println ( datum Tijd ) ;
} vangst ( ParseException e ) {
en. printStackTrace ( ) ;
}

De gegeven uitvoer geeft aan dat de String met succes is geconverteerd naar een DateTime-object:

Laten we nu eens kijken hoe de LocalDate-klasse werkt voor het converteren van een String naar een DateTime-object.

Methode 2: Converteer tekenreeks naar DateTime-object met behulp van LocalDate Class

Een andere populaire DateTime-klasse in Java is ' LokaleDatumTijd ”. Het formaat van het object omvat “ T ”, wat staat voor “ Tijd ” en fungeert als een scheidingspunt tussen datum en tijd.

Syntaxis
De onderstaande syntaxis kan worden gevolgd om de methode parse() van de klasse LocalDate te gebruiken:

LokaleDatumTijd. ontleden ( 'DateTime-tekenreeks' ) ;

Hier roept de klasse LocalDate de ' ontleden() ' door een DateTime String door te geven om deze om te zetten in een DateTime Object.

Voorbeeld
We zullen eerst een object van de klasse LocalDateTime maken met de naam ' datum Tijd ” en ontleden het opgegeven String-argument met behulp van de “ ontleden() methode:

LokaalDatumTijd datumTijd = LokaleDatumTijd. ontleden ( '202-08-19T02:30:45' ) ;

Druk ten slotte de resulterende ' datum Tijd ”-object op de console:

Systeem. uit . println ( datum Tijd ) ;

Uitgang:

Methode 3: String converteren naar DateTime-object met behulp van ZonedDateTime Class

Soms hebben we tijdzone-informatie nodig met de DateTime. Voor dit doel ondersteunt Java een klasse genaamd “ GezoneerdDatumTijd ” dat de huidige tijdzones ophaalt terwijl u met datum en tijd werkt. Deze klasse maakt ook gebruik van de “ ontleden() ”-methode met de ZonedDateTime-klasse om een ​​tekenreeks te ontleden en deze om te zetten in een DateTime-object.

Syntaxis
Volg de gegeven syntaxis om de ZonedDateTime-klasse te gebruiken:

GezoneerdDatumTijd. ontleden ( 'DateTime-tekenreeks' ) ;

Hier roept de ZonedDateTime-klasse de ' ontleden() ”-methode door een tekenreeks door te geven die moet worden geconverteerd naar een DateTime-object.

Voorbeeld
Eerst maken we een object van de ZonedDateTime-klasse met de naam ' zone ” en bel de “ ontleden() ”-methode door er een DateTime String in als argument in door te geven. De opgegeven tekenreeks vertegenwoordigt de datum en tijd van de ' Amerika ' tijdzone:

ZonedDateTijdzone = GezoneerdDatumTijd. ontleden
( '2022-08-19T02:56:45.513464300-05:00[Amerika/Chicago]' ) ;

Druk het geconverteerde DateTime-object af:

Systeem. uit . println ( zone ) ;

Zoals u kunt zien, wordt het geconverteerde DateTime-object weergegeven met de tijdzone-informatie:

We hebben alle benodigde informatie verzameld voor het converteren van een String naar een DateTime-object in Java.

Conclusie

Voor het converteren van een tekenreeks naar een DateTime-object worden verschillende manieren in Java gebruikt, zoals de klasse SimpleDateFormat, de klasse LocalDate en de klasse ZonedDateTime. Deze klassen maken deel uit van de pakketten Java.time en Java.util. Om een ​​string te converteren met deze klassen, voert u de ' ontleden() ”-methode door een String als argument door te geven. Deze blog legde de procedures uit om een ​​String naar een DateTime-object in Java te converteren met de juiste voorbeelden.