Java日期格式化(DateFormat類和SimpleDateFormat類) http://c.biancheng.net/view/878.html
1、SimpleDateFormat類
https://www.iteye.com/blog/zy-email1991-2243021
Date newTime = new Date();
SimpleDateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String formatDate = dateFormatter.format(newTime);
System.out.println(formatDate);
SimpleDateFormat 格式化日期 -- https://blog.csdn.net/qq_36761831/article/details/79691119
字母 | 含義 | 示例 |
---|---|---|
y | 年份。一般用 yy 表示兩位年份,yyyy 表示 4 位年份 | 使用 yy 表示的年扮,如 11; 使用 yyyy 表示的年份,如 2011 |
M | 月份。一般用 MM 表示月份,如果使用 MMM,則會 根據語言環境顯示不同語言的月份 |
使用 MM 表示的月份,如 05; 使用 MMM 表示月份,在 Locale.CHINA 語言環境下,如“十月”;在 Locale.US 語言環境下,如 Oct |
d | 月份中的天數。一般用 dd 表示天數 | 使用 dd 表示的天數,如 10 |
D | 年份中的天數。表示當天是當年的第幾天, 用 D 表示 | 使用 D 表示的年份中的天數,如 295 |
E | 星期幾。用 E 表示,會根據語言環境的不同, 顯示不 同語言的星期幾 |
使用 E 表示星期幾,在 Locale.CHINA 語 言環境下,如“星期四”;在 Locale.US 語 言環境下,如 Thu |
H | 一天中的小時數(0~23)。一般用 HH 表示小時數 | 使用 HH 表示的小時數,如 18 |
h | 一天中的小時數(1~12)。一般使用hh表 示小時數 | 使用 hh 表示的小時數,如 10 (注意 10 有 可能是 10 點,也可能是 22 點) |
m | 分鐘數。一般使用 mm 表示分鐘數 | 使用 mm 表示的分鐘數,如 29 |
s | 秒數。一般使用 ss 表示秒數 | 使用 ss 表示的秒數,如 38 |
S | 毫秒數。一般使用 SSS 表示毫秒數 | 使用 SSS 表示的毫秒數,如 156 |
2、DateFormat 類
當輸出日期格式按照國家習慣顯示時,用這個類
- DateFormat.SHORT:完全爲數字,如 12.5.10 或 5:30pm。
- DateFormat.MEDIUM:較長,如 May 10,2016。
- DateFormat.LONG:更長,如 May 12,2016 或 11:15:32am。
- DateFormat.FULL:是完全指定,如 Tuesday、May 10、2012 AD 或 11:l5:42am CST。
//獲取不同格式化風格和中國環境的日期
DateFormat df1=DateFormat.getDateInstance(DateFormat.SHORT,Locale.CHINA);
String date1=df1.format(new Date());
//獲取不同格式化風格和中國環境的時間
DateFormat df5=DateFormat.getTimeInstance(DateFormat.SHORT,Locale.CHINA);
String time1=df5.format(new Date());
//輸出日期
System.out.println("SHORT:"+date1+" "+time1);
//結果
//SHORT:18-10-15 上午9:30
例:
SHORT:18-10-15 上午9:30
FULL:2018年10月15日 星期一 上午09時30分43秒 CST
MEDIUM:2018-10-15 9:30:43
LONG:2018年10月15日 上午09時30分43秒