From Gossip@Openhome

Java Gossip: 使用 Calendar - JDK6

使用 Calendar 中的範例,使用switch進行判斷以顯示中文的日期格式,在Java SE 6中,您可以直接使用getDisplayNames()或getDisplayName()方法取得區域化的日期格式顯示,例如可以改寫使用switch的那個範例為以下的程式:
  • ClassLoaderDemo.java
package onlyfun.caterpillar;

import java.util.*;
import static java.util.Calendar.*;

public class CalendarDemo {
public static void main(String[] args) {
Calendar rightNow = Calendar.getInstance();
Locale locale = Locale.getDefault();

System.out.println("現在時間是:");
System.out.printf("%s:%d %n",
rightNow.getDisplayName(ERA, LONG, locale),
rightNow.get(YEAR));
System.out.println(
rightNow.getDisplayName(MONTH, LONG, locale));
System.out.printf("%d 日%n",
rightNow.get(DAY_OF_MONTH));
System.out.println(
rightNow.getDisplayName(DAY_OF_WEEK, LONG, locale));

}
}

只要指定Locale物件,就可以適當的顯示區域化日期訊息,執行的結果如下所示:
現在時間是:
西元:2006
十一月
23 日
星期四