Java:String和Date、Timestamp之间的转

    添加时间:2013-6-28 点击量:

     Java:String和Date、Timestamp之间的转





    一、String与Date(java.util.Date)互转


     


         1.1 String -> Date


     




    Java代码  



    1. String dateStr = 2010/05/04 12:34:23;  

    2.         Date date = new Date();  

    3.         //重视format的格局要与日期String的格局相匹配  

    4.         DateFormat sdf = new SimpleDateFormat(yyyy/MM/dd HH:mm:ss);  

    5.         try {  

    6.             date = sdf.parse(dateStr);  

    7.             System.out.println(date.toString());  

    8.         } catch (Exception e) {  

    9.             e.printStackTrace();  

    10.         }  


     


     


      1.2 Date -> String


     


       日期向字符串转换,可以设置随便率性的转换格局format




    Java代码  



    1. String dateStr = ;  

    2.         Date date = new Date();  

    3.         //format的格局可以随便率性  

    4.         DateFormat sdf = new SimpleDateFormat(yyyy/MM/dd HH:mm:ss);  

    5.         DateFormat sdf2 = new SimpleDateFormat(yyyy-MM-dd HH/mm/ss);  

    6.         try {  

    7.             dateStr = sdf.format(date);  

    8.             System.out.println(dateStr);  

    9.             dateStr = sdf2.format(date);  

    10.             System.out.println(dateStr);  

    11.         } catch (Exception e) {  

    12.             e.printStackTrace();  

    13.         }  


     二、String与Timestamp互转


     


     


       2.1 String ->Timestamp


     


     


       应用Timestamp的valueOf()办法




    Java代码  



    1. Timestamp ts = new Timestamp(System.currentTimeMillis());  

    2.         String tsStr = 2011-05-09 11:49:45;  

    3.         try {  

    4.             ts = Timestamp.valueOf(tsStr);  

    5.             System.out.println(ts);  

    6.         } catch (Exception e) {  

    7.             e.printStackTrace();  

    8.         }  


       注:String的类型必须形如: yyyy-mm-dd hh:mm:ss[.f...] 如许的格局,中括号默示可选,不然报错!!!


        若是String为其他格局,可推敲从头解析下字符串,再重组~~


     


        2.2 Timestamp -> String


     


      应用Timestamp的toString()办法或者借用DateFormat


     




    Java代码  



    1. Timestamp ts = new Timestamp(System.currentTimeMillis());  

    2.         String tsStr = ;  

    3.         DateFormat sdf = new SimpleDateFormat(yyyy/MM/dd HH:mm:ss);  

    4.         try {  

    5.             //办法一  

    6.             tsStr = sdf.format(ts);  

    7.             System.out.println(tsStr);  

    8.             //办法二  

    9.             tsStr = ts.toString();  

    10.             System.out.println(tsStr);  

    11.         } catch (Exception e) {  

    12.             e.printStackTrace();  

    13.         }  


     很轻易可以或许看出来,办法一的上风在于可以灵活的设置字符串的情势。


    三、Date( java.util.Date )和Timestamp互转


     


      声明:查API可知,Date和Timesta是父子类关系


     


     


      3.1 Timestamp -> Date


     


     




    Java代码  



    1. Timestamp ts = new Timestamp(System.currentTimeMillis());  

    2.         Date date = new Date();  

    3.         try {  

    4.             date = ts;  

    5.             System.out.println(date);  

    6.         } catch (Exception e) {  

    7.             e.printStackTrace();  

    8.         }  


     很简单,然则此刻date对象指向的实体倒是一个Timestamp,即date拥有Date类的办法,但被覆盖的办法的履行实体在Timestamp中。


     


     


       3.2 Date -> Timestamp


     


       父类不克不及直接向子类转化,可借助中心的String~~~~


       注:应用以式格式更简洁


       Timestamp ts = new Timestamp(date.getTime());



    真正的心灵世界会告诉你根本看不见的东西,这东西需要你付出思想和灵魂的劳动去获取,然后它会照亮你的生命,永远照亮你的生命。——王安忆《小说家的十三堂课》
    分享到: