Java

Como Converter Date para OffsetDateTime no Java

Neste tutorial mostro como converter Date para OffsetDateTime no #Java


 

Como Converter Date para OffsetDateTime no Java
logo java

 

 

Este em um breve tutorial de como podemos converter um valor do tipo Date para um valor do tipo OffsetDateTime usando o Java.

O intuito deste tutorial é mostrar uma forma prática e rápida de como podemos trabalhar com os formatos Date e OffsetDateTime no Java, pois geralmente a manipulação  do tipo (Date) é algo um pouco complicado principalmente quando queremos comparar duas datas distintas ou calcular o tempo decorrido entre uma data e outra e a utilizarmos  a classe OffsetDateTime facilitar  a manipulação de variáveis do tipo (data), já que ela possui muitos métodos que auxilia na manipulação de datas.

 

Abaixo mostro o código que foi criado para demonstrar Como Converter Date para OffsetDateTime no Java.

import java.time.Instant;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.util.Date;

public class ConvertDateToOffsetDateTime {

    public static void main(String[] args) {

      Date date = new Date();
      Instant instant = date.toInstant();
      ZoneOffset offset = ZoneOffset.of("-03:00");

      OffsetDateTime offsetDateTime = OffsetDateTime.ofInstant(instant, offset);

      System.out.println("instant: " + instant);
      System.out.println("Date: " + date);
        System.out.println("OffsetDateTime: " + offsetDateTime);

    }

}

Uma breve explicação do código acima:

  • 1ª é atribuímos a data atual a variável (date)  com  usando a instancia (new Date());
  • Depois  atribuímos  o Instant a variável (date) usando o método (toInstant);
  • Configuramos a zona do offset para (-03:00) com o método (of) da classe  ZoneOffset;
  • Por ultimo é realizada a conversão para o formato (OffsetDateTime) com o método (ofInstant) da classe (OffsetDateTime)  e atribuímos o valor a variável (offsetDateTime);
  • E logo após é realizada a impressão dos valores na console da IDE;

 

Abaixo mostro uma breve descrição  da saída da execução do código acima e o que é impresso no console da IDE:

  • Na 1ª linha é exibido a data no formato (Instant);
  • Na 2ª linha é exibido a data no formato (Date);
  • Na 3ª  linha é exibido a data no formato (OffsetDateTime);

 

instant: 2023-11-30T19:03:02.565Z
Date: Thu Nov 30 16:03:02 BRT 2023
OffsetDateTime: 2023-11-30T16:03:02.565-03:00



Segue abaixo um pequeno Vídeo explicativo do processo e implementação do código de conversão do tipo (Date) para o tipo (OffsetDateTime):

Abaixo segue link do Github com o código fonte que utilizei  para implementação deste tutorial:

Código Fonte


Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *