java中SimpleDateFormat理解

日期的转换格式非常重要,理解日期转换,可以非常方便我们转换我们想要的格式

SimpleDateFormat函数的继承关系:
java.lang.Object (最高一级)
|
+—-java.text.Format
   |
   +—-java.text.DateFormat
      |
      +—-java.text.SimpleDateFormat

日期模板(非常重要,前端后端数据库基本都是一样的)
在这里插入图片描述
月份必须是大 M .分钟为小m

SimpleDateFormat构造函数
     //构造方法:
public SimpleDateFormat(String pattern)
//转换:
public Date parse(String source)throws ParseException //-->此时取得的是全部时间数。
//格式化:
public final String Format(Date date)   //-->将时间重新格式化成字符串显示

SimpleDateFormat 常见的使用

public class MyFormatDateTime {

     public static void main(String[] args) {
         SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
         SimpleDateFormat myFmt1=new SimpleDateFormat("yy/MM/dd HH:mm"); 
         SimpleDateFormat myFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//等价于now.toLocaleString()
         SimpleDateFormat myFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");
         
         SimpleDateFormat myFmt4=new SimpleDateFormat(
                 "一年中的第 D 天 一年中第w个星期 一月中第W个星期 在一天中k时 z时区");
         Date now=new Date();  
         System.out.println(myFmt.format(now));    //2020年11月22日 22时10分24秒
         System.out.println(myFmt1.format(now));   // 20/11/22 22:10
         System.out.println(myFmt2.format(now));   //2020-11-22 22:10:24
         System.out.println(myFmt3.format(now));   //2020年11月22日 22时10分24秒 星期日
         System.out.println(myFmt4.format(now));   //一年中的第 351 天 一年中第51个星期 一月中第3个星期 在一天中17时 CST时区
         System.out.println(now.toGMTString());     //22 Nov 2020 22:10:24 GMT
         System.out.println(now.toLocaleString());   //2020-11-22 22:10:24
         System.out.println(now.toString());       //Sun Nov 16 22:10:24 CST 2020
     }    
}

字符串转日期 :

import java.text.* ;  
import java.util.* ;  
public class DateDemo05{  
    public static void main(String args[]){  
        String strDate = "2008-10-19 10:11:30.345" ;  
        // 准备第一个模板,从字符串中提取出日期数字  
        String pat1 = "yyyy-MM-dd HH:mm:ss.SSS" ;  
        // 准备第二个模板,将提取后的日期数字变为指定的格式  
        String pat2 = "yyyy年MM月dd日 HH时mm分ss秒SSS毫秒" ;  
        SimpleDateFormat sdf1 = new SimpleDateFormat(pat1) ;        // 实例化模板对象  
        SimpleDateFormat sdf2 = new SimpleDateFormat(pat2) ;        // 实例化模板对象  
        Date d = null ;  
        try{  
            d = sdf1.parse(strDate) ;   // 将给定的字符串中的日期提取出来  
        }catch(Exception e){            // 如果提供的字符串格式有错误,则进行异常处理  
            e.printStackTrace() ;       // 打印异常信息  
        }  
        System.out.println(sdf2.format(d)) ;    // 将日期变为新的格式  
    }  
};  

观看的文档:
DateFormat 日期格式化类(必须掌握)
https://www.cnblogs.com/qingfengzhuimeng/p/6735698.html
DateFormat与SimpleDateFormat
https://blog.csdn.net/xx326664162/article/details/52208247
Java时间日期格式转换
https://www.cnblogs.com/edwardlauxh/archive/2010/03/21/1918615.html

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值