日期格式化
java中日期的格式
Symbol | Meaning | Comment |
---|---|---|
y | 年 | 不区分大小写 y yyy yyyy 匹配的都是4位完整的年;如:2020 yy 匹配的是年份的后两位 ;如:19 超过4位,会在年份前面加"0"补位 如 “YYYYY"对应"02017” |
MM | 月 | 只能使用大写 若月份为10 M 对应 10 MM 对应 10 MMM 对应 Oct MMMM 对应 Oct 超出3位,任然对应“October” |
dd | 日 | 只能使用小写 若日期为10号 d dd 都对应10 超出两位 会在数字面前加0 补位;如 dddd 对应0013 |
hh | 时 | 区分大小写 大写为24进制时 小写为12进制时 设目前为16时 H HH 都对应16 超出两位,会在数字前补0;例 HHHH 对应0016 h 对应4 hh 对应04 超出两位,会在数字前补0;例 hhhh 对应0004 |
mm | 分 | 只能使用小写 假设为29分 m mm 都对应29 超出两位,会在数字前补0;例 mmmm 对应0029 |
ss | 秒 | 只能使用小写 假设为15秒 s ss 都对应15 超出两位,会在数字前补0;例 ssss 对应0015 |
E | 星期 | 只能使用大写 假设为Sunday E EE EEE 都对应 Sun EEEE仍然对应Sunday 超出4位 仍然对应Sunday |
a | 上午 下午 | 上午对应AM 下午对应PM |
其中的分隔符"-"可以替换成其他非字母的任意字符(也可以是汉字)
Date currentTime=new Date();
SimpleDateFormat dateFormat=new SimpleDateFormat("y世纪M月d日 晚上h时m分s秒 E a");
输出为:
2020世纪7月24日 晚上7时27分33秒 星期五 下午
字符串转化为日期 String类型----->Date类型
String dateString="2020年7月24日";
//1.定义格式化的标准 参数自己指定,参考上面的日期格式
SimpleDateFormat format = new SimpleDateFormat("yyyy年M月d日");
//2.调用parse方法 字符串为参数
Date date = format.parse(dateString1);
System.out.println(date);
输出:
Fri Jul 24 00:00:00 CST 2020
使用SimpleDateFormat类中的parse方法
日期转化为字符串 Date类型---->String类型
Date currentDate=new Date();
//定义格式化标准
SimpleDateFormat format = new SimpleDateFormat("yyy/MM/dd HH:mm:ss");
//2.调用SimpleDateFormat中的format方法,日期为参数
String date = format.format(currentDate);
System.out.println(date);
输出:
2020/07/25 14:35:23