2025-02-17

java時間轉換方法實例代碼

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
 
DateFormat format = new SimpleDateFormat(“yyyy-MM-dd”);        
Date date = null;   
String str = null;                 
            
// String 轉Date   
str = “2007-1-18”;         
try {   
    date = format.parse(str);  // Thu Jan 18 00:00:00 CST 2007   
} catch (ParseException e) {   
    e.printStackTrace();   
}              
date = java.sql.Date.valueOf(str);  // 隻保留日期部分,返回的是 java.sql.Date  2007-01-18               
// Date 轉String   
date = new Date();   // Thu Jan 18 21:35:01 CST 2007   
/*Calendar cal = Calendar.getInstance();  
date = new Date(cal.getTimeInMillis());*/  
str = format.format(date);  // 2007-01-18              
format = DateFormat.getDateInstance(DateFormat.SHORT);   
str = format.format(date);  // 07-1-18   
format = DateFormat.getDateInstance(DateFormat.MEDIUM);   
str = format.format(date);  // 2007-1-18   
format = DateFormat.getDateInstance(DateFormat.FULL);   
str = format.format(date);  // 2007年1月18日 星期四  

取得某一日期的前n個月的日期:
//將一個日期字符串轉化成日期
    public  Date   switchStringToDate(String   sDate){
          Date   date=null;
          try{
              SimpleDateFormat   df=new   SimpleDateFormat( “yyyy-MM-dd “);
              date = java.sql.Date.valueOf(sDate);   //轉成date形式的yyyy-MM-dd
             
          }catch(Exception   e){
              System.out.println( “日期轉換失敗: ” e.getMessage());
          }
          return   date;
    }
//將一個日期字符串轉化成Calendar
    public  Calendar   switchStringToCalendar(String   sDate){
            Date   date   =   switchStringToDate(sDate);
            Calendar   c   =   Calendar.getInstance();
            c.setTime(date);
            return   c;
    }
 //取得某個時間前n個月的相對應的一天
    public  String   getNMonthBeforeOneDay(String sDate,int n){
            Calendar c   =   switchStringToCalendar(sDate);
            c.add(c.MONTH,-n);
            Date date=java.sql.Date.valueOf(c.get(c.YEAR) “-” (c.get(c.MONTH) 1) “-” c.get(c.DATE));
            DateFormat format = new SimpleDateFormat(“yyyy-MM-dd”);
            String str = format.format(date);  // 2007-01-18
   return   str;

    }

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *