P
Phil Hanna
Hi,
I have a date value (in the form of an integer) yyyyMMdd.
I would like to add 5 days to it and get back a new date value yyyyMMdd.
e.g. 20030628 + 5 = 20030703
Any help on how this method will be like is greatly appreciated.
Regards.....
June
Three steps:
1. Convert the integer to a Calendar object
2. Use the Calendar.add method to add days
3. Convert the Calendar object back to the integer format:
import java.io.*;
import java.net.*;
import java.util.*;
public class DateAdd
{
public static void main(String[] args)
{
int date = 20030628;
Calendar cal = dateToCalendar(date);
cal.add(Calendar.DATE, 5);
date = calendarToDate(cal);
System.out.println(date);
}
public static Calendar dateToCalendar(int date) {
int day = date % 100;
int month = (date/100) % 100 - 1;
int year = date / 10000;
Calendar cal = Calendar.getInstance();
cal.set(year, month, day);
return cal;
}
public static int calendarToDate(Calendar cal) {
int day = cal.get(Calendar.DATE);
int month = cal.get(Calendar.MONTH) + 1;
int year = cal.get(Calendar.YEAR);
return year * 10000 + month * 100 + day;
}
}