String类型的date对象之间相互转换的示例分享
下文笔者讲述Date对象转成喜欢的字符串格式
及自己喜欢的字符串格式转换为Date对象的方法分享
实现思路:
使用DateFormat对Date对象进行格式化。
DateFormat是一个抽象类
需使用DateFormat的子类 SimpleDateFormat SimpleDateFormat的构造方法:
SimpleDateFormat(String pattern):
创建一个SimpleDateFormat对象。参数pattern表示模式
模式指的就是转换的格式。
日期对应格式: 1999年11月11日 08点09分54秒 日期对应模式: yyyy年MM月dd日 HH点mm分ss秒。
要使用英语字母替换掉日期格式中的数字
y:表示年
M:表示月
d:表示日
H:表示时
m:表示分
s:表示秒
成员方法:
String format(Date date):
将一个Date对象根据给出的模式转成String
public class Demo01DateFormat { public static void main(String[] args) { //创建Date对象 Date date = new Date(); //1. 创建SimpleDateFormat对象,给出指定的模式 //希望转成的格式: 2022年10月18日 07点02分21秒 //SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH点mm分ss秒"); //希望转成的格式: 2022-10-18 07:02:21 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //2. 调用format方法,将Date对象转成字符串 String str = sdf.format(date); System.out.println(str); } } * 如果想要把一个字符串转成一个Date对象,同样也可以使用SimpleDateFormat去转换。 使用的是另一个方法 Date parse(String source): 将一个字符串转成一个Date对象。 注意: 1. 要转的这个字符串必须是一个能够解析的时间 2. 字符串的格式必须和SimpleDateFormat中的模式一致。 当调用parse方法时,下面会有一个红线,此时需要抛出一个异常, alt + 回车,选择第一个 总结: Date对象转字符串: 调用SimpleDateFormat的format方法就可以了。 也叫作格式化。 字符串转Date对象 调用SimpleDateFormat的parse方法就可以了。 也叫作解析。 */ public class Demo02DateFormat { public static void main(String[] args) throws ParseException { //创建字符串 String str = "2022-05-21 09:16:28"; //1. 创建一个SimpleDateFormat对象,指定一个模式。 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //2. 调用parse方法,将字符串转成Date对象 Date date = sdf.parse(str); //3. 打印 System.out.println(date); } } 使用SimpleDateFormat类,把2022-05-21转换为2022年05月21日。*/ //综合练习题。 import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Exercise06 { public static void main(String[] args) throws ParseException { String str1="2022-05-21";//给定一个字符串日期 // //创建SimpleDateFormat对象sdf1,指定日期模式为yyyy-MM-dd SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); Date date= sdf.parse(str1);//字符串转成date对象类型 DateFormat sdf2=new SimpleDateFormat("yyyy年MM月dd日"); String str2= sdf2.format(date);//date类型转换成字符串 System.out.println(str2); } }