Ultimatum
January 7th, 2010, 03:10 PM
I want to create a week view but I can't figure out how to get the first date of this week (03/01/2010) and the last date (09/01/2010). I found this script but I get as first date 10/01/2010 and as last date 09/01/2010 and I don't see why I get 10/01/2010 as first date.
// Code to test it.
GregorianCalendar calendar = new GregorianCalendar();
//Get the interval
String [] interval = calendarModel.getWeekInterval(calendar);
System.out.println("First day of week: " + interval[0]);
System.out.println("Last day of week: " + interval[1]);
private DateFormat df = new SimpleDateFormat("MM/dd/yyyy");
public String[] getWeekInterval(Calendar cal)
{
// find start of week
Calendar start = Calendar.getInstance();
start.setTime(cal.getTime());
start.set(Calendar.DAY_OF_WEEK, cal.getActualMinimum(Calendar.DAY_OF_WEEK));
// find end of week
Calendar end = Calendar.getInstance();
end.setTime(cal.getTime());
end.set(Calendar.DAY_OF_WEEK, cal.getActualMaximum(Calendar.DAY_OF_WEEK));
// format start and end date and return
return new String[] { df.format(start.getTime()), df.format(end.getTime()) };
}
private Calendar getFirstDayOfThisWeek(GregorianCalendar cal)
{
cal.add(Calendar.DAY_OF_YEAR, Calendar.SATURDAY);
return cal;
}
private Calendar getLastDayOfThisWeek(GregorianCalendar cal)
{
cal.add(Calendar.DAY_OF_YEAR, Calendar.SATURDAY);
return cal;
}
// Code to test it.
GregorianCalendar calendar = new GregorianCalendar();
//Get the interval
String [] interval = calendarModel.getWeekInterval(calendar);
System.out.println("First day of week: " + interval[0]);
System.out.println("Last day of week: " + interval[1]);
private DateFormat df = new SimpleDateFormat("MM/dd/yyyy");
public String[] getWeekInterval(Calendar cal)
{
// find start of week
Calendar start = Calendar.getInstance();
start.setTime(cal.getTime());
start.set(Calendar.DAY_OF_WEEK, cal.getActualMinimum(Calendar.DAY_OF_WEEK));
// find end of week
Calendar end = Calendar.getInstance();
end.setTime(cal.getTime());
end.set(Calendar.DAY_OF_WEEK, cal.getActualMaximum(Calendar.DAY_OF_WEEK));
// format start and end date and return
return new String[] { df.format(start.getTime()), df.format(end.getTime()) };
}
private Calendar getFirstDayOfThisWeek(GregorianCalendar cal)
{
cal.add(Calendar.DAY_OF_YEAR, Calendar.SATURDAY);
return cal;
}
private Calendar getLastDayOfThisWeek(GregorianCalendar cal)
{
cal.add(Calendar.DAY_OF_YEAR, Calendar.SATURDAY);
return cal;
}