Java Formatter format time and date

Introduction

The conversion specifiers %t can format time and date data.

The %t specifier need a suffix to specify the portion and precise format of the time or date.

The suffixes are shown in the following table.

Suffix Replaced By
a Abbreviated weekday name
A Full weekday name
b Abbreviated month name
B Full month name
c Standard date and time string formatted as day month date hh::mm:ss timezone year
C First two digits of year
d Day of month as a decimal (01-31)
D month/day/year
e Day of month as a decimal (1-31)
F year-month-day
h Abbreviated month name
H Hour (00 to 23)
I Hour (01 to 12)
jDay of year as a decimal (001 to 366)
k Hour (0 to 23)
l Hour (1 to 12)
L Millisecond (000 to 999)
m Month as decimal (01 to 13)
M Minute as decimal (00 to 59)
N Nanosecond (000000000 to 999999999)
p Locale's equivalent of AM or PM in lowercase
Q Milliseconds from 1/1/1970
r hh:mm:ss (12-hour format)
R hh:mm (24-hour format)
S Seconds (00 to 60)
s Seconds from 1/1/1970 UTC
T hh:mm:ss (24-hour format)
y Year in decimal without century (00 to 99)
Y Year in decimal including century (0001 to 9999)
z Offset from UTC
Z Time zone name

For example, to display minutes, you would use %tM, where M indicates minutes in a two-character field.

The argument corresponding to the %t specifier must be of type Calendar, Date, Long, or long or new Java data time classes such as LocalDate.

Here is a program that demonstrates several of the formats:

// Formatting time and date. 
import java.util.Calendar;
import java.util.Formatter; 
 
public class Main { 
  public static void main(String args[]) { 
    Formatter fmt = new Formatter(); 
    Calendar cal = Calendar.getInstance(); 
 
    // Display standard 12-hour time format. 
    fmt.format("%tr", cal); 
    System.out.println(fmt); //w w w  .j  av a2 s  .com
    fmt.close();
 
    // Display complete time and date information. 
    fmt = new Formatter(); 
    fmt.format("%tc", cal); 
    System.out.println(fmt); 
    fmt.close();
 
    // Display just hour and minute. 
    fmt = new Formatter(); 
    fmt.format("%tl:%tM", cal, cal); 
    System.out.println(fmt); 
    fmt.close();
 
    // Display month by name and number. 
    fmt = new Formatter(); 
    fmt.format("%tB %tb %tm", cal, cal, cal); 
    System.out.println(fmt); 
    fmt.close();
  } 
}



PreviousNext

Related