Ottieni la data, l'ora e il timestamp correnti in Java 8

1. Introduzione

Questo rapido articolo descrive come possiamo ottenere la data corrente, l'ora corrente e il timestamp corrente in Java 8.

2. Data corrente

Per prima cosa, usiamo java.time.LocalDate per ottenere la data di sistema corrente:

LocalDate localDate = LocalDate.now();

Per ottenere la data in qualsiasi altro fuso orario possiamo utilizzare LocalDate.now (ZoneId) :

LocalDate localDate = LocalDate.now(ZoneId.of("GMT+02:30"));

Possiamo anche usare java.time.LocalDateTime per ottenere un'istanza di LocalDate:

LocalDateTime localDateTime = LocalDateTime.now(); LocalDate localDate = localDateTime.toLocalDate();

3. Ora corrente

Con java.time.LocalTime , recuperiamo l'ora di sistema corrente:

LocalTime localTime = LocalTime.now();

Per ottenere l'ora corrente in un fuso orario specifico, possiamo utilizzare LocalTime.now (ZoneId) :

LocalTime localTime = LocalTime.now(ZoneId.of("GMT+02:30"));

Possiamo anche usare java.time.LocalDateTime per ottenere un'istanza di LocalTime:

LocalDateTime localDateTime = LocalDateTime.now(); LocalTime localTime = localDateTime.toLocalTime();

4. Timestamp corrente

Usa java.time.Instant per ottenere un timestamp dall'epoca di Java. Secondo JavaDoc, "le epoche-secondi sono misurate dall'epoca standard di Java del 1970-01-01T00: 00: 00Z, dove gli istanti dopo l'epoca hanno valori positivi:

Instant instant = Instant.now(); long timeStampMillis = instant.toEpochMilli();

Possiamo ottenere il numero di epoch-seconds:

Instant instant = Instant.now(); long timeStampSeconds = instant.getEpochSecond();

5. conclusione

In questo tutorial ci siamo concentrati sull'uso di java.time. * Per ottenere la data, l'ora e l'ora correnti.

Come sempre, il codice dell'articolo è disponibile su GitHub.