Formato de data [2020, 9, 15]: que tipo de formato é esse?

Sep 22 2020

Estou tentando consumir json externo, que tem algumas datas. O formato da data é: [ 2020, 9, 15 ]Tentei usá-lo como string, mas não funcionou.

Você pode me dizer que tipo de formato é esse

Respostas

3 OleV.V. Sep 22 2020 at 01:56

java.time

Leia o array de números JSON em um Java int[]( intarray) e construa um a LocalDatepartir dele.

    int[] arrayFromJson = { 2020, 9, 15 };
    System.out.println("Array from JSON: " + Arrays.toString(arrayFromJson));
    
    LocalDate date = LocalDate.of(arrayFromJson[0], arrayFromJson[1], arrayFromJson[2]);
    System.out.println("Date as LocalDate: " + date);

O resultado é:

Array from JSON: [2020, 9, 15]
Date as LocalDate: 2020-09-15

LocalDate é a classe de java.time, a moderna API Java de data e hora, para representar uma data sem hora do dia, portanto, a classe certa a ser usada aqui.

Ler e analisar o JSON

Como ler o JSON em Java? Depende de qual biblioteca você está usando para fazer isso. Aqui está um exemplo usando Jackson:

    ObjectMapper mapper = new ObjectMapper();
    String json = "[ 2020, 9, 15]";

    int[] arrayFromJson = mapper.readValue(json, int[].class);
    System.out.println(Arrays.toString(arrayFromJson));
[2020, 9, 15]