Java String和Date的轉換


 

Java String和Date的轉換

String—>Date方法一:

String—>Date方法二:

Date—>String

SimpleDateFormat函數語法:

js格式化時間調用代碼

 

Java String和Date的轉換

 

String—>Date方法一:

 String dateString = "2012-12-06 ";  
 try  
 {  
     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd ");  
     Date date = sdf.parse(dateString);  
 }  catch (ParseException e)  {  
System.out.println(e.getMessage()); }

  

String—>Date方法二:

 

import java.text.ParseException;  

 import java.text.SimpleDateFormat;  

 import java.util.Calendar;  

 import java.util.Date;  

   

 importorg.apache.commons.lang.StringUtils;  

   

 /** 

  * 日期Util類 

  *  

  * @author calvin 

  */  

 public class DateUtil  

 {  

     private static String defaultDatePattern = "yyyy-MM-dd ";  

   

     /** 

      * 獲得默認的 date pattern 

      */  

     public static String getDatePattern()  

     {  

         return defaultDatePattern;  

     }  

   

     /** 

      * 返回預設Format的當前日期字符串 

      */  

     public static String getToday()  

     {  

         Date today = new Date();  

         return format(today);  

     }  

   

     /** 

      * 使用預設Format格式化Date成字符串 

      */  

     public static String format(Date date)  

     {  

         return date == null ? " " : format(date, getDatePattern());  

     }  

   

     /** 

      * 使用參數Format格式化Date成字符串 

      */  

     public static String format(Date date, String pattern)  

     {  

         return date == null ? " " : new SimpleDateFormat(pattern).format(date);  

     }  

   

     /** 

      * 使用預設格式將字符串轉為Date 

      */  

     public static Date parse(String strDate) throws ParseException  

     {  

         return StringUtils.isBlank(strDate) ? null : parse(strDate,  

                 getDatePattern());  

     }  

   

     /** 

      * 使用參數Format將字符串轉為Date 

      */  

     public static Date parse(String strDate, String pattern)  

             throws ParseException  

     {  

         return StringUtils.isBlank(strDate) ? null : new SimpleDateFormat(  

                 pattern).parse(strDate);  

     }  

   

     /** 

      * 在日期上增加數個整月 

      */  

     public static Date addMonth(Date date, int n)  

     {  

         Calendar cal = Calendar.getInstance();  

         cal.setTime(date);  

         cal.add(Calendar.MONTH, n);  

         return cal.getTime();  

     }  

   

     public static String getLastDayOfMonth(String year, String month)  

     {  

         Calendar cal = Calendar.getInstance();  

         // 年  

         cal.set(Calendar.YEAR, Integer.parseInt(year));  

         // 月,因為Calendar里的月是從0開始,所以要-1  

         // cal.set(Calendar.MONTH, Integer.parseInt(month) - 1);  

         // 日,設為一號  

         cal.set(Calendar.DATE, 1);  

         // 月份加一,得到下個月的一號  

         cal.add(Calendar.MONTH, 1);  

         // 下一個月減一為本月最后一天  

         cal.add(Calendar.DATE, -1);  

         return String.valueOf(cal.get(Calendar.DAY_OF_MONTH));// 獲得月末是幾號  

     }  

   

     public static Date getDate(String year, String month, String day)  

             throws ParseException  

     {  

         String result = year + "- "  

                 + (month.length() == 1 ? ("0 " + month) : month) + "- "  

                 + (day.length() == 1 ? ("0 " + day) : day);  

         return parse(result);  

     }  

 }  

 

  

 

Date—>String

 

1 String sdate;  
2 Date ddate;  
3 sdate=(new SimpleDateFormat("yyyy-MM-dd")).format(ddate);  

 

 

 

 

SimpleDateFormat函數語法:

         G 年代標志符

         y 年

         M 月

         d 日

         h 時 在上午或下午 (1~12)

         H 時 在一天中 (0~23)

         m 分

         s 秒

         S 毫秒

         E 星期

         D 一年中的第幾天

         F 一月中第幾個星期幾

         w 一年中第幾個星期

         W 一月中第幾個星期

         a 上午 / 下午 標記符

         k 時 在一天中 (1~24)

         K 時 在上午或下午 (0~11)

         z 時區

常見標准的寫法"yyyy-MM-dd HH:mm:ss",注意大小寫,時間是24小時制,24小時制轉換成12小時制只需將HH改成hh,不需要另外的函數。

 

js格式化時間調用代碼

 

 1 Date.prototype.format = function(fmt) {
 2 
 3      var o = {
 4 
 5         "M+" : this.getMonth()+1,                 //月份
 6 
 7         "d+" : this.getDate(),                    //
 8 
 9         "h+" : this.getHours(),                   //小時
10 
11         "m+" : this.getMinutes(),                 //
12 
13         "s+" : this.getSeconds(),                 //
14 
15         "q+" : Math.floor((this.getMonth()+3)/3), //季度
16 
17         "S"  : this.getMilliseconds()             //毫秒
18 
19     };
20 
21     if(/(y+)/.test(fmt)) {
22 
23             fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
24 
25     }
26 
27      for(var k in o) {
28 
29         if(new RegExp("("+ k +")").test(fmt)){
30 
31              fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
32 
33          }
34 
35      }
36 
37     return fmt;
38 
39 }
40 
41  
42 
43 var v3=window.Engine.FormItems['enddate'].getValue().format("yyyy-MM-dd");
44 
45  
46 
47 new date.format(格式)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM