TimeUtil.java 3.09 KB
/**@author Sherlock_yb
 * Created time:2014-2-23
 */
package nlp.whu.utils;

import java.text.SimpleDateFormat;
import java.util.Date;
/**@description:时间工具
 */
public class TimeUtil {
	public static int getDateNum(Date date,String pattern){
		int i=Integer.parseInt(getDateStartTimeString(date,pattern));
		return i;
	}
	
	// 获取当天开始时时间
	public static String getDateStartTimeString(Date date,String pattern) {
		//SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd HH");
		SimpleDateFormat f = new SimpleDateFormat(pattern);
		String currentdata = f.format(date);
		return currentdata;
	}
	
	// 获取时间转换成的字符串
	public static String getDateString(Date date) {
		if(date == null)
			return null;
		SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		String currentdata = f.format(date);
		return currentdata;
	}
	
	public static Date minusDateHour(Date date,int minusHour){
		long dateTime=date.getTime();
		long timeAfterMinus=dateTime-(long)(minusHour*3600*1000);
		Date dateAfterMinus=new Date();
		dateAfterMinus.setTime(timeAfterMinus);
		return dateAfterMinus;
	}
	
	public static Date minusDateMin(Date date,int minusMin){
		long dateTime=date.getTime();
		long timeAfterMinus=dateTime-(long)(minusMin*60*1000);
		Date dateAfterMinus=new Date();
		dateAfterMinus.setTime(timeAfterMinus);
		return dateAfterMinus;
	}
	
	public static Date addDateHour(Date date,int addHour){
		long dateTime=date.getTime();
		long timeAfterMinus=dateTime+(long)(addHour*3600*1000);
		Date dateAfterMinus=new Date();
		dateAfterMinus.setTime(timeAfterMinus);
		return dateAfterMinus;
	}
	
	public static Date addDateMin(Date date,int addMin){
		long dateTime=date.getTime();
		long timeAfterMinus=dateTime+(long)(addMin*60*1000);
		Date dateAfterMinus=new Date();
		dateAfterMinus.setTime(timeAfterMinus);
		return dateAfterMinus;
	}
	
	public static Date parse(String dateString,String pattern){
		//String dateString = "2012-09-24 11:28:21";
		SimpleDateFormat df = new SimpleDateFormat(pattern);
		Date date = new Date();
		try {
			date = df.parse(dateString);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return date;
	}
	
	public static Date parse(String dateString){
		//String dateString = "2012-09-24 11:28:21";
		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		Date date = new Date();
		try {
			date = df.parse(dateString);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return date;
	}
	
	/**
	 * @param date1 
	 * @param date2
	 * @return hour(date2-date1)
	 */
	public static long getHourGap(Date startDate,Date endDate){
		long startTime=startDate.getTime();
		long endTime=endDate.getTime();
		return (long)(endTime-startTime)/(3600*1000);
	}
	
	public static void main(String args[]){
		Date now = new Date();
		String dateStr = TimeUtil.getDateString(now);
		Date integralPoint = TimeUtil.parse(dateStr, "yyyy-MM-dd HH");
		integralPoint = TimeUtil.addDateHour(integralPoint, 1);
		System.out.println(TimeUtil.getDateString(integralPoint));
	}
}