各种格式化

Date
1.一年中的第几天: %tj 006;
2.一月中的第几天: %td 06 ; %te 6 ;
3.月份(与语言环境有关) %tb 二月 Feb;%tB 二月 February;%tm 02
4.星期(与语言环境有关) %ta 星期一 Mon; %tA 星期一 Monday;
5.年份 %tY 2008 %ty 08
6.所有信息(与语言环境有关) %tc 星期五 一月 06 23:31:20 CST 2012


Time
1.小时 %tH (00-23);%tI (01-12);%tk (0-23);%l (1-12)
2.分钟 %tM (00-59);
3.秒数 %tS (00-60);
4.毫秒 %tL (000-999);
5.微秒 %tN (000 000 000-999999999);
6.上午 %tp (下午,pm)
7.相对于GMT RFC 82格式的数字时区偏移量 %tz(+0800)
8.时区缩写形式的字符串 %tZ (CST)
9.1970标准到现在的秒数 %ts (); %tQ 毫秒数


组合
1.年月日 %tF (2012-01-06);%tD (01/06/12)
2.%tr 11:58:54 下午
3.%tT 23:58:54
4.%tR 23:58


常规类型格式化
1.%b,%B格式化成boolean类型 例如:String.format("%b",400/2)
2.%h,%H格式化成散列码
3.%s,%S
4.%c,%C格式化成字符
5.%d格式化成十进制%o八进制%x十六进制
6.%e格式化成用科学计数法表示的十进制
7.%a格式化为带有效位数和指数的十六进制浮点值
8.%n结果为特定于平台的分隔符

9.%%结果为字面值‘%’


备注:<表示从前 如:String.format("%tT%<tF",new Date());

+表示打印正负号

0表示数字空格补零

- 表示左对齐

,表示添加分组 如在表示钱时90,000,000

$用于指定将被格式化的参数的索引 如System.out.printf("name is %2$s.Age is %1$d.%n",age,name);


下面是参考代码 更清晰 :这是我发表的第一个小知识总结 希望你们看了喜欢哦

各种格式化

如果不想显示星期一,想显示Mon可以这样

Locale local = new Locale("Enlish");

//String[] weekdayName = new DateFormatSymbols().getInstance(Locale.ENGLISH).getShortWeekdays();

String[] weekdayName = new DateFormatSymbols().getInstance(local).getShortWeekdays();
for(String ss : weekdayName)
System.out.println(ss);