tl; Dr.
Giriş dizeniz tarafından standart ISO 8601 biçimi kullanılır.
Instant.parse ( "2011-08-12T20:17:46.384Z" )
ISO 8601
Bu biçim, makul pratik standart ISO 8601 tarafından tanımlanır .
T
Zaman-of-day kısmından tarih kısmını ayırır. Z
Ucunda anlamına UTC (olduğundan, bir ofset-UTC sıfır saat-dakika-saniye). Z
Olan “Zulu” telaffuz .
java.time
Java'nın en eski sürümleriyle birlikte gelen eski tarih-saat sınıflarının kötü tasarlanmış, kafa karıştırıcı ve zahmetli olduğu kanıtlanmıştır. Onlardan kaçının.
Bunun yerine, Java 8 ve sonraki sürümlerinde yerleşik olarak bulunan java.time çerçevesini kullanın . Java.time sınıfları hem eski tarih-saat sınıflarını hem de son derece başarılı Joda-Time kitaplığını destekler.
Java.time sınıfları , tarih-saat değerlerinin metinsel gösterimlerini ayrıştırırken / oluştururken varsayılan olarak ISO 8601 kullanır .
Instant
Sınıf içinde zaman çizelgesi üzerinde bir anını temsil UTC çözünürlüğe sahip nanosaniye . Bu sınıf, bir biçimlendirme deseni tanımlamak için rahatsız etmeden doğrudan giriş dizenizi ayrıştırabilir.
Instant instant = Instant.parse ( "2011-08-12T20:17:46.384Z" ) ;
Hakkında java.time
Java.time çerçevesi daha sonra Java 8 ve yerleşiktir. Bu sınıflar zahmetli eski yerini mirası gibi tarih-saat sınıfları java.util.Date
, Calendar
& SimpleDateFormat
.
Artık bakım modunda olan Joda-Time projesi java.time sınıflarına geçişi tavsiye ediyor .
Daha fazla bilgi için Oracle Eğiticisine bakın . Ve birçok örnek ve açıklama için Stack Overflow'da arama yapın. Spesifikasyon JSR 310'dur .
Java.time sınıflarını nereden edinebilirsiniz?
- Java SE 8 , Java SE 9 ve üstü
- Dahili.
- Paketlenmiş bir uygulamaya sahip standart Java API'sinin bir parçasıdır.
- Java 9 bazı küçük özellikler ve düzeltmeler ekler.
- Java SE 6 ve Java SE 7
- Android
- Android'in sonraki sürümleri java.time sınıflarının uygulamalarını bir araya getirir.
- Daha önceki Android için, ThreeTenABP projesi ThreeTen-Backport'u uyarlar (yukarıda belirtilmiştir). Bkz . ThreeTenABP nasıl kullanılır… .
ThreeTen-Ekstra proje ek sınıfları ile java.time uzanır. Bu proje, java.time'a gelecekteki olası eklemeler için bir kanıt zeminidir. Burada bazı yararlı sınıfları gibi bulabilir Interval
, YearWeek
, YearQuarter
, ve daha .