java.time
Mark Jeronimus sudah mengatakannya . Saya menyempurnakannya sedikit lagi. Letakkan saja teks yang akan dicetak secara harfiah di dalam tanda kutip tunggal.
DateTimeFormatter yearFormatter = DateTimeFormatter.ofPattern("yyyy 'year'");
System.out.println(LocalDate.of(2010, Month.FEBRUARY, 3).format(yearFormatter));
System.out.println(Year.of(2010).format(yearFormatter));
System.out.println(ZonedDateTime.now(ZoneId.of("Europe/Vilnius")).format(yearFormatter));
Output saat berjalan barusan:
2010 year
2010 year
2019 year
Jika Anda menggunakan a DateTimeFormatterBuilder
dan appendPattern
metodenya, gunakan tanda kutip tunggal dengan cara yang sama. Atau gunakan appendLiteral
metodenya sebagai gantinya dan tidak ada tanda kutip tunggal.
Lalu, bagaimana kita memasukkan kutipan tunggal dalam format? Dua tanda kutip tunggal menghasilkan satu. Tidak masalah apakah tanda kutip tunggal ganda ada di dalam tanda kutip tunggal atau tidak:
DateTimeFormatter formatterWithSingleQuote = DateTimeFormatter.ofPattern("H mm'' ss\"");
System.out.println(LocalTime.now(ZoneId.of("Europe/London")).format(formatterWithSingleQuote));
10 28 '34 "
DateTimeFormatter formatterWithSingleQuoteInsideSingleQuotes
= DateTimeFormatter.ofPattern("hh 'o''clock' a, zzzz", Locale.ENGLISH);
System.out.println(ZonedDateTime.now(ZoneId.of("America/Los_Angeles"))
.format(formatterWithSingleQuoteInsideSingleQuotes));
Pukul 02:00 Waktu Musim Panas Pasifik
Semua pemformat di atas juga dapat digunakan untuk parsing. Sebagai contoh:
LocalTime time = LocalTime.parse("16 43' 56\"", formatterWithSingleQuote);
System.out.println(time);
16:43:56
The SimpleDateFormat
kelas digunakan ketika pertanyaan ini diminta hampir 10 tahun yang lalu ini sangat merepotkan dan lama usang. Saya merekomendasikan bahwa sebagai gantinya Anda menggunakan java.time, API tanggal dan waktu Java modern. Itulah mengapa saya mendemonstrasikan hal itu.
Tautan
SimpleDateFormat
kelas yang digunakan dalam beberapa jawaban terkenal merepotkan dan sudah lama usang. Hindari itu. Sebagai gantinya gunakan jawaban singkat dari Mark Jeronimus yang mendemonstrasikan penggunaan java.time, API tanggal dan waktu Java modern .