Formatting |
Theformat
method of theSimpleDateFormat
class returns aString
comprised of digits and symbols. For example, in theString
"Friday, April 10, 1998," the symbols are "Friday" and "April." If the symbols encapsulated inSimpleDateFormat
don't meet your needs, you can change them with theDateFormatSymbols
class. You can change symbols that represent names for months, days of the week, and time zones, among others. The following table lists theDateFormatSymbols
methods that allow you to modify the symbols:
Setter Method Example of Symbol
the Method ModifiessetAmPmStrings
PM setEras
AD setMonths
December setShortMonths
Dec setShortWeekdays
Tue setWeekdays
Tuesday setZoneStrings
PST The following example invokes
setShortWeekdays
to change the short names of the days of the week from lower to upper case characters. The full source code for this example is in the file namedDateFormatSymbolsDemo.java
. The first element in the array argument ofsetShortWeekdays
is a nullString
. Therefore, the array is one-based rather than zero-based. TheSimpleDateFormat
constructor accepts the modifiedDateFormatSymbols
object as an argument. Here is the source code:The preceding code generates this output:Date today; String result; SimpleDateFormat formatter; DateFormatSymbols symbols; String[] defaultDays; String[] modifiedDays; symbols = new DateFormatSymbols(new Locale("en","US")); defaultDays = symbols.getShortWeekdays(); for (int i = 0; i < defaultDays.length; i++) { System.out.print(defaultDays[i] + " "); } System.out.println(); String[] capitalDays = { "", "SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"}; symbols.setShortWeekdays(capitalDays); modifiedDays = symbols.getShortWeekdays(); for (int i = 0; i < modifiedDays.length; i++) { System.out.print(modifiedDays[i] + " "); } System.out.println(); System.out.println(); formatter = new SimpleDateFormat("E", symbols); today = new Date(); result = formatter.format(today); System.out.println(result);Sun Mon Tue Wed Thu Fri Sat SUN MON TUE WED THU FRI SAT WED
Formatting |