1.格式化:用format方法,用来将Date对象转换成String。
要格式化一个当前语言环境下的日期,需要通过下面的方法来完成。DateFormat是抽象类,我们需要使用其子类SimpleDateFormat来创建对象。
SimpleDateFormat可以将一个Date对象转换为一个符合指定格式的字符串,也可以将一个符合指定格式的字符串转为一个Date对象。
- 当出现
y
时,会将y替换成年
- 当出现
M
时,会将M替换成月
- 当出现
d
时,会将d替换成日
- 当出现
H
时,会将H替换成时
- 当出现
m
时,会将m替换成分
- 当出现
s
时,会将s替换成秒
public class Demo {
public static void main(String[] args) throws ParseException {
//2019-3-12 10:31:43
//2019年3月12日10:31:43
//日期格式化:format
// 父类 DateFormat
// 子类 SimpleDateFormat
DateFormat df1 = new SimpleDateFormat("yyyy年MM月dd日HH:mm:ss");
Date date = new Date();
String s = df1.format(date);
System.out.println(s);
2.解析时间:用parse方法,用来将String转换成Date(转换时,该String要符合指定格式,否则不能转换。
解析时间时,时分秒默认为零,所以需要解析的字符串只需要写到年月日。
public class Demo {
public static void main(String[] args) throws ParseException {
//解析时间
//将字符串 2019年3月12日10:39:42 转成Date对象
String s2 = "2021年2月12日";
DateFormat df2 = new SimpleDateFormat("yyyy年MM月dd日");
//抛异常,解析时可能会出现问题,原数据匹配规则不一致
Date date2 = df2.parse(s2);
System.out.println(date2.toLocaleString());
}
}