Come convertire una stringa in un oggetto DateTime in Java

Come Convertire Una Stringa In Un Oggetto Datetime In Java



Durante la programmazione in Java, a volte, potrebbe essere necessario eseguire la conversione di oggetti da stringa a data. Sebbene non esista un metodo predefinito in Java per lo scopo specificato, è comunque possibile utilizzare diversi metodi per convertire una stringa in un oggetto DateTime.

Questo blog spiegherà le procedure per la conversione da String a un oggetto DateTime in Java.

Come convertire una stringa in un oggetto DateTime in Java?

Per convertire una stringa in un oggetto DateTime in Java, puoi usare:







  • Classe SimpleDateFormat
  • Classe LocalDate
  • Classe ZonedDateTime

Vediamo come le classi citate aiutano a convertire una stringa in un oggetto DateTime.



Metodo 1: convertire una stringa in un oggetto DateTime utilizzando la classe SimpleDateFormat

Per convertire una stringa in un oggetto DateTime, puoi usare Java ' SimpleDateFormat ' classe. Usando questa classe, una stringa può essere analizzata nell'oggetto DateTime richiesto con l'aiuto del metodo 'parse()'.



Sintassi
Ecco la sintassi del metodo parse() della classe SimpleDateFormat:





sf. analizzare ( 'Stringa Data/Ora' ) ;

Il ' sf ” è l'oggetto della classe SimpleDateFormat che richiama il “ analizzare() ” passando una stringa in un formato DateTime.

Esempio
Innanzitutto, creeremo un'istanza della classe SimpleDateFormat e passeremo un formato di data e ora come parametro:



SimpleDateFormat sf = nuovo SimpleDateFormat ( 'gg-MM-aaaa;HH:mm:ss' ) ;

Usa un blocco try-catch in cui devi prima creare un oggetto del tipo ' Data 'classe denominata' appuntamento ”. Questo oggetto memorizzerà la data analizzata come una stringa utilizzando il metodo parse(), quindi stampa l'oggetto DateTime convertito con ' System.out.println() ' metodo:

Tentativo {
Data appuntamento = sf. analizzare ( '19-08-2022; 01:34:23' ) ;
Sistema. fuori . println ( appuntamento ) ;
} presa ( ParseException e ) {
e. printStackTrace ( ) ;
}

L'output fornito indica che la stringa è stata convertita correttamente in un oggetto DateTime:

Ora, vediamo come funziona la classe LocalDate per convertire un oggetto String in un oggetto DateTime.

Metodo 2: convertire una stringa in un oggetto DateTime utilizzando la classe LocalDate

Un'altra popolare classe DateTime in Java è ' LocalDateTime ”. Il formato del suo oggetto comprende “ T ”, che rappresenta “ Volta ” e funge da punto di separazione tra data e ora.

Sintassi
La sintassi indicata di seguito può essere seguita per utilizzare il metodo parse() della classe LocalDate:

LocalDateTime. analizzare ( 'Stringa Data/Ora' ) ;

Qui, la classe LocalDate chiama il ' analizzare() ” passando una stringa DateTime per convertirla in un oggetto DateTime.

Esempio
Creeremo prima un oggetto della classe LocalDateTime chiamato ' appuntamento ' e analizza l'argomento String specificato con l'aiuto di ' analizzare() ' metodo:

LocalDateTime dateTime = LocalDateTime. analizzare ( '2022-08-19T02:30:45' ) ;

Infine, stampa il risultante ' appuntamento ” oggetto sulla console:

Sistema. fuori . println ( appuntamento ) ;

Produzione

Metodo 3: convertire una stringa in un oggetto DateTime utilizzando la classe ZonedDateTime

A volte, abbiamo bisogno di informazioni sul fuso orario con DateTime. A questo scopo, Java supporta una classe chiamata ' ZonedDateTime ” che recupera i fusi orari attuali mentre si lavora con data e ora. Questa classe utilizza anche il ' analizzare() ” con la classe ZonedDateTime per analizzare una stringa e convertirla in un oggetto DateTime.

Sintassi
Per utilizzare la classe ZonedDateTime, segui la sintassi indicata:

ZonedDateTime. analizzare ( 'Stringa Data/Ora' ) ;

Qui, la classe ZonedDateTime invoca il ' analizzare() ” passando una stringa da convertire in un oggetto DateTime.

Esempio
In primo luogo, creeremo un oggetto della classe ZonedDateTime denominato ' zona ” e chiama il “ analizzare() ” passando una stringa DateTime come argomento. La stringa specificata rappresenta la data e l'ora del ' America ' fuso orario:

ZonedDateTime zone = ZonedDateTime. analizzare
( '2022-08-19T02:56:45.513464300-05:00[America/Chicago]' ) ;

Stampa l'oggetto DateTime convertito:

Sistema. fuori . println ( zona ) ;

Come puoi vedere, l'oggetto DateTime convertito viene visualizzato con le informazioni sul fuso orario:

Abbiamo raccolto tutte le informazioni necessarie per convertire una stringa in un oggetto DateTime in Java.

Conclusione

Per convertire una stringa in un oggetto DateTime, in Java vengono utilizzati diversi modi, come la classe SimpleDateFormat, la classe LocalDate e la classe ZonedDateTime. Queste classi fanno parte dei pacchetti Java.time e Java.util. Per convertire una stringa utilizzando queste classi, eseguire il ' analizzare() ” passando una stringa come argomento. Questo blog ha spiegato le procedure per convertire un oggetto String in un oggetto DateTime in Java con esempi appropriati.