> 文档中心 > String类型的date对象之间相互转换的示例分享

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);    }}