This question already has an answer here:
How do I add x days to a date in Java?
For example, my date is (dd/mm/yyyy) = 01/01/2012
Adding 5 days, the output should be 06/01/2012
.
This question already has an answer here:
How do I add x days to a date in Java?
For example, my date is (dd/mm/yyyy) = 01/01/2012
Adding 5 days, the output should be 06/01/2012
.
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); Calendar c = Calendar.getInstance(); c.setTime(new Date()); // Now use today date. c.add(Calendar.DATE, 5); // Adding 5 days String output = sdf.format(c.getTime()); System.out.println(output);
With the Java 8 Date and Time API you can use the LocalDate
class.
LocalDate.now().plusDays(nrOfDays)
See the Oracle Tutorial.
Calendar cal = Calendar.getInstance(); cal.set(Calendar.DAY_OF_MONTH, 1); cal.set(Calendar.MONTH, 1); cal.set(Calendar.YEAR, 2012); cal.add(Calendar.DAY_OF_MONTH, 5);
You can also substract days like Calendar.add(Calendar.DAY_OF_MONTH, -5);
Here is some simple code to give output as currentdate
+ D days
= some 'x' date
(future date):
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); Calendar c = Calendar.getInstance(); c.add(Calendar.DATE, 5); System.out.println(dateFormat.format(c.getTime()));
If you're using Joda-Time (and there are lots of good reasons to - a simple, intuitive API and thread-safety) then you can do this trivially:
(new LocalDate()).plusDays(5);
to give 5 days from today, for example.
Simple, without any other API:
To add 8 days:
Date today=new Date(); long ltime=today.getTime()+8*24*60*60*1000; Date today8=new Date(ltime);