Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

adding hours in date time format java

Tags:

java

SimpleDateFormat parser = new SimpleDateFormat("HH:mm");
Date time1 = parser.parse("7:30");

Now if I want to add 2 more hours to time1, like:

7:30 + 2 = 9:30

how do I add the 2 hours?

like image 677
user1521582 Avatar asked Jun 03 '26 19:06

user1521582


2 Answers

java.util.Date is deprecated, you should use java.util.Calendar instead.

SimpleDateFormat parser = new SimpleDateFormat("HH:mm");
Date myDate = parser.parse("7:30");
Calendar cal =Calendar.getInstance();
cal.setTime(myDate);
cal.add(Calendar.HOUR_OF_DAY,2); // this will add two hours
myDate = cal.getTime();

And even better solution is to use Joda Time - Java date and time API.

From their website - Joda-Time provides a quality replacement for the Java date and time classes.

like image 147
Abubakkar Avatar answered Jun 06 '26 09:06

Abubakkar


Convert java.util.Date into java.util.Calendar Object and use Calendar.add() method to add Hours

SimpleDateFormat parser = new SimpleDateFormat("HH:mm");
Date time1 = parser.parse("7:30");
Calendar cal =Calendar.getInstance();
cal.setTime(time1);
cal.add(Calendar.Hour_Of_Day, 2);
time1 =cal.getTime();
System.out.println(parser.format(time1));//returns 09:30
like image 21
PermGenError Avatar answered Jun 06 '26 07:06

PermGenError



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!