Bagaimana cara mengubah tanggal sekarang menjadi string di Java?
java
string
date
formatting
pengguna354299
sumber
sumber
Diambil dari sini
sumber
Calendar
lebih diinginkan daripadaDate
?sumber
Gunakan
DateFormat
implementasi; misSimpleDateFormat
.sumber
tl; dr
Lebih baik menentukan zona waktu yang diinginkan / diharapkan secara eksplisit.
java.time
Cara modern untuk Java 8 dan yang lebih baru adalah dengan framework java.time .
Tentukan zona waktu, karena tanggalnya bervariasi di seluruh dunia pada saat tertentu.
Secara default Anda mendapatkan String dalam format ISO 8601 standar.
Untuk format lain gunakan
java.time.format.DateTimeFormatter
kelas.Tentang java.time
The java.time kerangka dibangun ke Jawa 8 dan kemudian. Kelas-kelas ini menggantikan tua merepotkan warisan kelas tanggal-waktu seperti
java.util.Date
,Calendar
, &SimpleDateFormat
.Proyek Joda-Time , sekarang dalam mode pemeliharaan , menyarankan migrasi ke kelas java.time .
Untuk mempelajari lebih lanjut, lihat Tutorial Oracle . Dan cari Stack Overflow untuk banyak contoh dan penjelasan. Spesifikasinya adalah JSR 310 .
Anda dapat bertukar objek java.time langsung dengan database Anda. Gunakan driver JDBC yang sesuai dengan JDBC 4.2 atau yang lebih baru. Tidak perlu string, tidak perlu
java.sql.*
kelas.Di mana mendapatkan kelas java.time?
Proyek ThreeTen-Extra memperluas java.time dengan kelas tambahan. Proyek ini adalah tempat pembuktian untuk kemungkinan penambahan java.time di masa mendatang. Anda mungkin menemukan beberapa kelas berguna di sini seperti
Interval
,YearWeek
,YearQuarter
, dan lebih .sumber
Lebih cepat:
sumber
Untuk waktu sebagai YYYY-MM-dd
Dan Library of DateTime adalah:
import org.joda.time.DateTime;
sumber
DateTime
? Jawaban tentang Stack Overflow harus memiliki penjelasan karena situs ini dimaksudkan sebagai lebih dari sekadar pustaka cuplikan.Sebagian besar jawaban valid. Modifikasi JAVA API baru untuk penanganan Tanggal memastikan bahwa beberapa ambiguitas sebelumnya dalam penanganan tanggal java dikurangi.
Anda akan mendapatkan pesan yang tidak berlaku lagi untuk panggilan serupa.
Panggilan di atas membuat pengembang berasumsi bahwa objek Tanggal baru akan memberikan objek Tanggal dengan stempel waktu saat ini. Perilaku ini tidak konsisten di seluruh kelas API Java lainnya.
Cara baru untuk melakukannya adalah menggunakan Contoh Kalender .
Di sini juga konvensi penamaan tidak sempurna tetapi ini banyak diatur. Untuk orang seperti saya yang kesulitan menjambret sesuatu tetapi tidak akan pernah melupakan sesuatu jika kedengarannya / tampak logis, ini adalah pendekatan yang baik.
Ini lebih identik dengan kehidupan nyata
Satu cara lagi untuk melakukannya adalah dengan menggunakan Joda time API
atau yang lebih jelas
keduanya akan mengembalikan hasil yang sama.
sumber
java.util.Date
,java.util.Calendar
, danjava.text.SimpleTextFormat
sekarang warisan , digantikan oleh java.time kelas. Selain itu, proyek Joda-Time sekarang dalam mode pemeliharaan , dengan tim menyarankan migrasi ke java.time.Clock
implementasinya di Java 8 persis sama dengan class lama. Hanya di Java 9 implementasi baru tiba, mampu menangkap momen saat ini dengan resolusi sehalus nanodetik.sumber
String
format apa pun ke fungsi Anda.