/**
* @desc 给定的日期加若干小时 格式为:2015-01-22 09:01:52
* @author : LMK
* @date : Jan 21, 2015 4:52:02 PM
* @param strdate
* @param days
* @return
*/
public static String addSomeHour(String strdate,int hours){
Date date = new Date(); // 构造一个日期型中间变量
String dateresult = null; // 返回的日期字符串
// 创建格式化格式
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 加减日期所用
GregorianCalendar gc = new GregorianCalendar();
try {
date = df.parse(strdate); // 将字符串格式化为日期型
} catch (ParseException e) {
e.printStackTrace();
}
gc.setTime(date); // 得到gc格式的时间
gc.add(GregorianCalendar.HOUR_OF_DAY, hours);
// 把运算完的时间从新赋进对象
gc.set(gc.get(gc.YEAR), gc.get(gc.MONTH), gc.get(gc.DATE),gc.get(gc.HOUR_OF_DAY),gc.get(gc.MINUTE),gc.get(gc.SECOND));
// 在格式化回字符串时间
dateresult = df.format(gc.getTime());
return dateresult;
* @desc 给定的日期加若干小时 格式为:2015-01-22 09:01:52
* @author : LMK
* @date : Jan 21, 2015 4:52:02 PM
* @param strdate
* @param days
* @return
*/
public static String addSomeHour(String strdate,int hours){
Date date = new Date(); // 构造一个日期型中间变量
String dateresult = null; // 返回的日期字符串
// 创建格式化格式
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 加减日期所用
GregorianCalendar gc = new GregorianCalendar();
try {
date = df.parse(strdate); // 将字符串格式化为日期型
} catch (ParseException e) {
e.printStackTrace();
}
gc.setTime(date); // 得到gc格式的时间
gc.add(GregorianCalendar.HOUR_OF_DAY, hours);
// 把运算完的时间从新赋进对象
gc.set(gc.get(gc.YEAR), gc.get(gc.MONTH), gc.get(gc.DATE),gc.get(gc.HOUR_OF_DAY),gc.get(gc.MINUTE),gc.get(gc.SECOND));
// 在格式化回字符串时间
dateresult = df.format(gc.getTime());
return dateresult;
}
/**
* @desc 给定的日期加若干小时(支持小数) 格式为:2015-01-22 09:01:52
* @author : LMK
* @date : Jan 28, 2015 2:16:18 PM
* @param strDate
* @param hours
* @return
*/
public static Date addSomeHours(String strDate,float hours)
{
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date oldDate = df.parse(strDate);
Long mills = oldDate.getTime();
mills += hours*60*60*1000;
Date newDate = new Date(mills);
return newDate;
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
public static Date addSomeHours2(String strDate,float hours)
{
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
cal.setTime(df.parse(strDate));
Float f = new Float(hours*60);
cal.add(Calendar.MINUTE, f.intValue());
return cal.getTime();
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
public static void main(String[] args) {
System.out.println(addSomeHours("2015-01-21 14:14:24", 1f));
System.out.println(addSomeHour("2015-01-21 14:14:24", 1));
System.out.println(addSomeHours2("2015-01-21 14:14:24", 1f));
}