tl; Dr.
Diğer Yanıtların bazıları java.time sınıflarını önermek için doğrudur, ancak özel gereksinimleriniz için gereksiz uzunlukları kullanmaya devam edin.
Instant.now() // Capture the current moment in UTC with a resolution as fines nanoseconds but usually in microseconds or milliseconds.
.truncatedTo( ChronoUnit.MINUTES ) // Lop off any seconds or fractional second, to get a value in whole minutes.
.toString() // Generate a String in standard ISO 8601 format where a `T` separates the year-month-day from the hour-minute-second, and the `Z` on the end for “Zulu” means UTC.
2018-01-23T12: 34Z
Instant::toString
jav.time.Instant
Sınıf hep UTC UTC bir anını temsil ediyor.
Instant instant = Instant.now() ;
instant.toString (): 2018-01-23T12: 34: 56.123456Z
Z
Senin örneğin dizesinin ucunda 2010-10-12T08:50Z
“Zulu” telaffuz ve anlamı da UTC .
İstediğiniz format ISO 8601 standardına uygundur. Java.time dizeleri üreten / ayrıştırılırken sınıflar varsayılan olarak bu standart biçimler kullanır. Bu yüzden bir biçimlendirme deseni belirtmeye gerek yoktur. Sadece araInstant::toString
yukarıda görüldüğü gibi .
Özellikle ikinci veya kesirli saniye olmadan tam dakikalar istiyorsanız, kısaltın. ChronoUnit
Sınıf yoluyla bir zaman birimi belirtin .
Instant instant = Instant.now().truncatedTo( ChronoUnit.MINUTES ) ;
String output = instant.toString(); // Generate a `String` object in standard ISO 8601 format.
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'a geçişi tavsiye ediyor sınıflarına .
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 .
Sen değiştirebilir java.time sizin veritabanı ile doğrudan nesneleri. JDBC 4.2 veya sonraki bir sürümüyle uyumlu bir JDBC sürücüsü kullanın . Dizeye gerek yok, sınıflara gerek yok .java.sql.*
Java.time sınıflarını nereden edinebilirsiniz?
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 .