Como converter uma string em um objeto DateTime em Java

Como Converter Uma String Em Um Objeto Datetime Em Java



Ao programar em Java, às vezes, você pode precisar realizar a conversão de objeto String para data. Embora não haja um método predefinido em Java para a finalidade especificada, ainda assim vários métodos podem ser utilizados para converter uma string em um objeto DateTime.

Este blog explicará os procedimentos para conversão de objeto String para DateTime em Java.

Como converter String para objeto DateTime em Java?

Para converter uma String em um objeto DateTime em Java, você pode usar:







  • Classe SimpleDateFormat
  • Classe LocalDate
  • Classe ZonedDateTime

Vamos ver como as classes mencionadas ajudam na conversão de uma String para um objeto DateTime.



Método 1: Converter String em objeto DateTime usando a classe SimpleDateFormat

Para converter uma String em um objeto DateTime, você pode usar o Java “ SimpleDateFormat ' classe. Usando esta classe, uma String pode ser analisada no objeto DateTime necessário com a ajuda do método “parse()”.



Sintaxe
Aqui está a sintaxe do método parse() da classe SimpleDateFormat:





sf. analisar ( 'String DataHora' ) ;

O ' sf ” é o objeto da classe SimpleDateFormat que invoca o “ analisar() ” passando uma String em um formato DateTime.

Exemplo
Primeiro, vamos criar uma instância da classe SimpleDateFormat e passar um formato de data e hora como parâmetro:



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

Use um bloco try-catch no qual primeiro você deve criar um objeto do tipo “ Encontro ” classe chamada “ data hora ”. Este objeto armazenará a data analisada como uma String usando o método parse() e, em seguida, imprimirá o objeto DateTime convertido com o “ System.out.println() ” método:

tentar {
Encontro data hora = sf. analisar ( '19-08-2022; 01:34:23' ) ;
Sistema. Fora . imprimir ( data hora ) ;
} truque ( ParseException e ) {
    e. printStackTrace ( ) ;
}

A saída fornecida indica que a String foi convertida com sucesso em um objeto DateTime:

Agora, vamos ver como a classe LocalDate funciona para converter uma String em um objeto DateTime.

Método 2: Converter String em objeto DateTime usando a classe LocalDate

Outra classe DateTime popular em Java é “ LocalDateTime ”. O formato de seu objeto compreende “ T ', que representa ' Tempo ” e atua como um ponto de separação entre data e hora.

Sintaxe
A sintaxe abaixo pode ser seguida para usar o método parse() da classe LocalDate:

LocalDateTime. analisar ( 'String DataHora' ) ;

Aqui, a classe LocalDate chama o “ analisar() ” passando uma String DateTime para convertê-la em um objeto DateTime.

Exemplo
Primeiro vamos criar um objeto da classe LocalDateTime chamado “ data hora ” e analise o argumento String especificado com a ajuda do “ analisar() ” método:

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

Por fim, imprima o resultado “ data hora ” objeto no console:

Sistema. Fora . imprimir ( data hora ) ;

Resultado

Método 3: Converter String em objeto DateTime usando a classe ZonedDateTime

Às vezes, precisamos de informações de fuso horário com o DateTime. Para isso, Java suporta uma classe chamada “ ZonedDateTime ” que busca os fusos horários atuais enquanto trabalha com data e hora. Esta classe também utiliza o “ analisar() ” com a classe ZonedDateTime para analisar uma string e convertê-la em um objeto DateTime.

Sintaxe
Para usar a classe ZonedDateTime, siga a sintaxe fornecida:

ZonedDateTime. analisar ( 'String DataHora' ) ;

Aqui, a classe ZonedDateTime invoca o “ analisar() ” passando uma String a ser convertida em um objeto DateTime.

Exemplo
Primeiramente, vamos criar um objeto da classe ZonedDateTime chamado “ zona ” e ligue para o “ analisar() ” passando um DateTime String nele como um argumento. A string especificada representa a data e hora do “ América ' fuso horário:

ZonedDateTime zone = ZonedDateTime. analisar
( '2022-08-19T02:56:45.513464300-05:00[América/Chicago]' ) ;

Imprima o objeto DateTime convertido:

Sistema. Fora . imprimir ( zona ) ;

Como você pode ver, o objeto DateTime convertido é exibido com as informações de fuso horário:

Reunimos todas as informações necessárias para converter uma String em um objeto DateTime em Java.

Conclusão

Para converter uma string em um objeto DateTime, várias maneiras em Java são usadas, como a classe SimpleDateFormat, a classe LocalDate e a classe ZonedDateTime. Essas classes fazem parte dos pacotes Java.time e Java.util. Para converter uma String usando essas classes, execute o “ analisar() ” passando uma String como argumento. Este blog explicou os procedimentos para converter uma String em um objeto DateTime em Java com exemplos adequados.