SimpleDateFormat对日期Date类的格式化和解析
1、两个操作
1)格式化:日期--->字符串
2)解析:格式化的逆过程,字符串--->日期
2、SimpleDateFormat的实例化
解析:要求字符串必须是符合SimpleDateFormat识别的格式(通过构造参数体现),不然会抛异常
代码示例:
import org.junit.Test;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateTimeTest {
@Test
public void testSimpleDateFormat()throws ParseException {
System.out.println("**************按照默认方式格式化******************");
//实例化SimpleDateFormat默认构造器
SimpleDateFormat sdf =new SimpleDateFormat();
//格式化:日期-->字符串
Date date =new Date();
System.out.println(date);//Sat Feb 05 08:42:32 CST 2022
System.out.println(sdf.format(date));//22-2-5 上午8:42
//解析:字符串-->日期
// String str = "2022-02-05";
// Date date1 = sdf.parse(str);//java.text.ParseException: Unparseable date: "2022-02-05"
System.out.println("**************这里开始是解析过程******************");
String str ="22-2-5 上午8:39";
Date date1 = sdf.parse(str);
System.out.println(date1);//Sat Feb 05 08:39:00 CST 2022
System.out.println("**************按照指定方式格式化******************");
//按照指定方式格式化:调用带参的构造器
SimpleDateFormat sdf1 =new SimpleDateFormat("yyyy.MMMM.dd GGG hh:mm:aaa");
System.out.println(sdf1.format(date1));//2022.二月.05 公元 08:39:上午
SimpleDateFormat sdf2 =new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(sdf2.format(date1));//2022-02-05 08:39:00
}
}