import java.time.*;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
class Demo {
void example() {
var now = ZonedDateTime.now();
// Built-in formatters (thread-safe constants)
System.out.println(DateTimeFormatter.ISO_INSTANT.format(Instant.now()));
System.out.println(DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(now));
System.out.println(DateTimeFormatter.ISO_LOCAL_DATE.format(LocalDate.now()));
// Custom pattern — see DateTimeFormatter Javadoc for the symbols
var fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss z");
System.out.println(fmt.format(now)); // 2025-03-12 14:25:00 CDT
// Locale-aware
var dateFmt = DateTimeFormatter.ofPattern("EEEE, d MMMM yyyy", Locale.FRENCH);
System.out.println(dateFmt.format(LocalDate.now())); // mercredi, 12 mars 2025
// Parse
LocalDate d = LocalDate.parse("2025-01-15");
ZonedDateTime z = ZonedDateTime.parse("2025-03-12T14:25:00-05:00[America/Chicago]");
// Parse with custom format
var customFmt = DateTimeFormatter.ofPattern("dd/MM/yyyy");
LocalDate uk = LocalDate.parse("15/01/2025", customFmt);
}
}
Create a free account and build your private vault. Share publicly whenever you want.