1
resposta

Unsupported field: MinuteOfHour

Ola pessoal!, poderiam me ajudar? estou recebendo a mensagem de erro:

2022-01-04
P-5Y-6M-29D
2020-06-05
Exception in thread "main" java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: MinuteOfHour
    at java.base/java.time.LocalDate.get0(LocalDate.java:709)
    at java.base/java.time.LocalDate.getLong(LocalDate.java:688)
    at java.base/java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:308)
    at java.base/java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.format(DateTimeFormatterBuilder.java:2763)
    at java.base/java.time.format.DateTimeFormatterBuilder$CompositePrinterParser.format(DateTimeFormatterBuilder.java:2402)
    at java.base/java.time.format.DateTimeFormatter.formatTo(DateTimeFormatter.java:1849)
    at java.base/java.time.format.DateTimeFormatter.format(DateTimeFormatter.java:1823)
    at java.base/java.time.LocalDate.format(LocalDate.java:1813)
    at java8.Datas.main(Datas.java:24)

o codigo digitado é:

package java8;

import java.time.LocalDate;
import java.time.Month;
import java.time.Period;
import java.time.format.DateTimeFormatter;

public class Datas {
    public static void main(String[] args) {
        LocalDate hoje = LocalDate.now();
        System.out.println(hoje);

        LocalDate olimpiadasRio = LocalDate.of(2016, Month.JUNE, 5);

        Period anos = Period.between(hoje, olimpiadasRio);
        System.out.println(anos);

        LocalDate proxOlimpiadas = olimpiadasRio.plusYears(4);

        System.out.println(proxOlimpiadas);

        DateTimeFormatter formatador = DateTimeFormatter.ofPattern("dd/mm/yyyy");

        System.out.println(proxOlimpiadas.format(formatador));

    }
}
1 resposta

Olá Tatiana,

Na linha que está criando o formatador:

DateTimeFormatter formatador = DateTimeFormatter.ofPattern("dd/mm/yyyy");

O "m" minúsculo representa minutos. Para representar o mês, troque por "M" maiúsculo.

DateTimeFormatter formatador = DateTimeFormatter.ofPattern("dd/MM/yyyy");