28 Kasım 2018 Çarşamba

ZoneId Sınıfı

Giriş
Şu satırı dahil ederiz
import java.time.ZoneId;
Açıklaması şöyle
Fixed identifier for a location/government
getAvailableZoneIds metodu
Örnek
Şöyle yaparız.
Set<String> allZones = ZoneId.getAvailableZoneIds();
Örnek
Şöyle yaparız.
final Set<String> availableZoneIds = ZoneId.getAvailableZoneIds();
availableZoneIds.forEach(
  zoneId -> {
    LocalDateTime dateTime = LocalDateTime.of(
                    LocalDate.of(2018, 1, 1), 
                    LocalTime.of(0, 0, 0)
                );
    ZonedDateTime now = ZonedDateTime.of(dateTime, ZoneId.of(zoneId));
    ...
  }
);
normalize metodu
Açıklaması şöyle.
A ZoneId is used to identify the rules used to convert between an Instant and a LocalDateTime. There are two distinct types of ID:
  • Fixed offsets - a fully resolved offset from UTC/Greenwich, that uses the same offset for all local date-times
  • Geographical regions - an area where a specific set of rules for finding the offset from UTC/Greenwich apply
Most fixed offsets are represented by ZoneOffset. Calling normalized() on any ZoneId will ensure that a fixed offset ID will be represented as a ZoneOffset.
Eğer saati dilimi sabit ise ZoneOffset nesnesine çevirir. Şöyle yaparız.
ZoneId.of("UTC").normalized();
of metodu
İsimle nesneyi kurar.  Nesne ismine dikkat etmek gerekir. Bazı isimler çok bilindik olmalarına rağmen aslıdna ZoneId değildir.
Örnek
Elimizde şöyle bir kod olsun. "EST" bir ZoneId değildir
ZonedDateTime.of(2001, 10, 1, 17, 7, 15, 0, ZoneId.of("EST", ZoneId.SHORT_IDS))
Şöyle yaparız
ZonedDateTime.of(2001, 10, 1, 17, 7, 15, 0, ZoneId.of("America/New_York"))
Örnek
Şöyle yaparız.
String s = ...;
ZoneId zone = ZoneId.of(s);
Örnek
Şöyle yaparız.
ZoneId gmt = ZoneId.of("GMT");
ZoneId cst = ZoneId.of("America/Chicago");
Diğer
Bir saat diliminden bir başkasına çevirmek için şöyle yaparız.
ZoneId gmt = ZoneId.of("GMT");
ZoneId cst = ZoneId.of("America/Chicago");
ZonedDateTime gmtTime = ZonedDateTime.now(gmt);
ZonedDateTime cstTime = gmtTime.withZoneSameInstant(cst);

Hiç yorum yok:

Yorum Gönder