→阿童沐

財富==支撐一個人生存多長時間的能力!

导航

Java Date 与 String 互转-

Date 与String 格式转换很常用,标准写法"yyyy-MM-dd HH:mm:ss",时间是24小时制:

SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
SimpleDateFormat format2 = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");  
   
 Date date1 = null;  
 Date date2 = null;  
 String str1 = "2009-02-14 12:00:00";  
 String str2 = "2009年02月14日 12时00分00秒";  
  
 // String转Date:String 必须严格按照定义的格式  
 try {  
     date1 = format1.parse(str1);  
     date2 = format2.parse(str2);  
 } catch (ParseException ex) {  
     Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);  
 }  
  
 System.out.println("date1= "+date1);  
 System.out.println("date2= "+date2);  
  
  
 //Date转String  
 String str3 = null;  
 String str4 = null;  
  
 str3 = format1.format(date1);  
 str4 = format2.format(date2);  
  
 System.out.println("str3= "+str3);  
 System.out.println("str4= "+str4);

下面是输出结果:

  date1= Sat Feb 14 12:00:00 CST 2009
  date2= Sat Feb 14 12:00:00 CST 2009
  str3= 2009-02-14 12:00:00
  str4= 2009年02月14日 12时00分00秒


 

具体两种类型转换规则如下:

  Date -> String

          String = (new SimpleDateFormat("格式")).format(Date); 

  String -> Date

          Date = (new SimpleDateFormat("格式")).parse(String); 

 


 如果是程序中的符合日期的字符串,想存入数据库中的Date/Datetime类型的字段中,是可以直接存的,系统会自动存成Date/Datetime类型。前提是字符串的格式一定要写对。


SimpleDateFormat 语法:  
         G -- 年代标志符
         y -- 年
         M -- 月 

         d -- 日
         h -- 时 12小时制 (1~12)
         H -- 时 24小时制 (0~23)
         m -- 分
         s -- 秒
         S -- 毫秒
         E -- 星期
         D -- 一年中的第几天
         F -- 一月中第几个星期几
         w -- 一年中第几个星期
         W -- 一月中第几个星期


         a 上午 / 下午 标记符 
         k 时 在一天中 (1~24)
         K 时 在上午或下午 (0~11)
         z 时区

转自:http://blog.csdn.net/netdevgirl/article/details/3890134

posted on 2012-06-26 10:16  阿童沐  阅读(179)  评论(0)    收藏  举报