java中常用的時間處理類TimeUtil

javap 9年前發布 | 7K 次閱讀 Java

    import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/** 
 * 時間處理類 
 * @author Alan 
 * @version 2013-7-26 
 */  
public class TimeUtil {  

    private Calendar calendar=Calendar.getInstance();  


    /** 
     * 得到當前的時間,時間格式yyyy-MM-dd 
     * @return 
     */  
    public String getCurrentDate(){  
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");  
        return sdf.format(new Date());  
    }  

    /** 
     * 得到當前的時間,自定義時間格式 
     * y 年 M 月 d 日 H 時 m 分 s 秒 
     * @param dateFormat 輸出顯示的時間格式 
     * @return 
     */  
    public String getCurrentDate(String dateFormat){  
        SimpleDateFormat sdf=new SimpleDateFormat(dateFormat);  
        return sdf.format(new Date());  
    }  

    /** 
     * 日期格式化,默認日期格式yyyy-MM-dd 
     * @param date 
     * @return 
     */  
    public String getFormatDate(Date date){  
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");  
        return sdf.format(date);  
    }  

    /** 
     * 日期格式化,自定義輸出日期格式 
     * @param date 
     * @return 
     */  
    public String getFormatDate(Date date,String dateFormat){  
        SimpleDateFormat sdf=new SimpleDateFormat(dateFormat);  
        return sdf.format(date);  
    }  
    /** 
     * 返回當前日期的前一個時間日期,amount為正數 當前時間后的時間 為負數 當前時間前的時間 
     * 默認日期格式yyyy-MM-dd 
     * @param field 日歷字段 
     * y 年 M 月 d 日 H 時 m 分 s 秒 
     * @param amount 數量 
     * @return 一個日期 
     */  
    public String getPreDate(String field,int amount){  
        calendar.setTime(new Date());  
        if(field!=null&&!field.equals("")){  
            if(field.equals("y")){  
                calendar.add(calendar.YEAR, amount);  
            }else if(field.equals("M")){  
                calendar.add(calendar.MONTH, amount);  
            }else if(field.equals("d")){  
                calendar.add(calendar.DAY_OF_MONTH, amount);  
            }else if(field.equals("H")){  
                calendar.add(calendar.HOUR, amount);  
            }  
        }else{  
            return null;  
        }         
        return getFormatDate(calendar.getTime());  
    }  

    /** 
     * 某一個日期的前一個日期 
     * @param d,某一個日期 
     * @param field 日歷字段 
     * y 年 M 月 d 日 H 時 m 分 s 秒 
     * @param amount 數量 
     * @return 一個日期 
     */  
    public String getPreDate(Date date,String field,int amount){  
        calendar.setTime(date);  
        if(field!=null&&!field.equals("")){  
            if(field.equals("y")){  
                calendar.add(calendar.YEAR, amount);  
            }else if(field.equals("M")){  
                calendar.add(calendar.MONTH, amount);  
            }else if(field.equals("d")){  
                calendar.add(calendar.DAY_OF_MONTH, amount);  
            }else if(field.equals("H")){  
                calendar.add(calendar.HOUR, amount);  
            }  
        }else{  
            return null;  
        }         
        return getFormatDate(calendar.getTime());  
    }  

    /** 
     * 某一個時間的前一個時間 
     * @param date 
     * @return 
     * @throws ParseException  
     */  
    public String getPreDate(String date) throws ParseException{  
        Date d=new SimpleDateFormat().parse(date);  
        String preD=getPreDate(d,"d",1);  
        Date preDate=new SimpleDateFormat().parse(preD);  
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  
        return sdf.format(preDate);  
    }  


}  </pre> 


 本文由用戶 javap 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!