Possible Duplicate:
Calculating the Difference Between Two Java Date Instances
How do I get number of days between two dates in Java?
What's the best way? Here is what I got but it's not the best:
public static ConcurrentHashMap<String, String> getWorkingDaysMap(int year, 
    int month, int day){
        int totalworkingdays=0,noofdays=0;
        String nameofday = "";
        ConcurrentHashMap<String,String> workingDaysMap = 
            new ConcurrentHashMap<String,String>();
        Map<String,String> holyDayMap = new LinkedHashMap<String,String>();
        noofdays = findNoOfDays(year,month,day);
        for (int i = 1; i <= noofdays; i++) {
            Date date = (new GregorianCalendar(year,month - 1, i)).getTime();
            // year,month,day
            SimpleDateFormat f = new SimpleDateFormat("EEEE");
            nameofday = f.format(date);
            String daystr="";
            String monthstr="";
            if(i<10)daystr="0";
            if(month<10)monthstr="0";
            String formatedDate = daystr+i+"/"+monthstr+month+"/"+year;
            if(!(nameofday.equals("Saturday") || nameofday.equals("Sunday"))){
                workingDaysMap.put(formatedDate,formatedDate);
                totalworkingdays++;
            }
        }
        return workingDaysMap;
    }
public static int findNoOfDays(int year, int month, int day) {
        Calendar calendar = Calendar.getInstance();
        calendar.set(year, month - 1, day);
        int days = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
        return days;
    }
 
     
    