【发布时间】:2011-09-24 19:33:20
【问题描述】:
有没有什么方法可以将 Date 对象格式化为固定的 Day 和 Month 长度,以便在列中保持良好的对齐? 例如:
2010 年 5 月 15 日 2010 年 1 月 10 日代替
2010 年 5 月 15 日 2010 年 1 月 10 日谢谢!
【问题讨论】:
有没有什么方法可以将 Date 对象格式化为固定的 Day 和 Month 长度,以便在列中保持良好的对齐? 例如:
2010 年 5 月 15 日 2010 年 1 月 10 日代替
2010 年 5 月 15 日 2010 年 1 月 10 日谢谢!
【问题讨论】:
看看java.util.Formatter类,其格式方法与String.format(...)相同,与System.out.printf类似。
例如:
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class FormatDateCalendar {
public static final String FORMAT_STRING = "%1$-3td %1$-9tB %1$tY";
public static void main(String[] args) {
Calendar c1 = new GregorianCalendar(2011, Calendar.FEBRUARY, 3);
Calendar c2 = new GregorianCalendar(2010, Calendar.MAY, 15);
Date today = new Date();
System.out.printf(FORMAT_STRING + "%n", c1);
System.out.printf(FORMAT_STRING + "%n", c2);
System.out.printf(FORMAT_STRING + "%n", today);
}
}
【讨论】: