機械翻訳について

2つの日付間の平日の計算

この例では、Groovyを使用して、2つの日付の間の平日の数を計算する方法を示します。

// Global Function getWorkingDaysBetweenTwoDates
// Returns: Long
// Parameters: ActivityStartDate (Date), ActivityEndDate (Date)

Calendar startCal = Calendar.getInstance();
startCal.setTime(ActivityStartDate);
Calendar endCal = Calendar.getInstance();
endCal.setTime(ActivityEndDate);
int workDays = 0;

//Return 0 if start and end are the same
if(startCal.getTimeInMillis() == endCal.getTimeInMillis()){
  return 0;
}
if(startCal.getTimeInMillis() > endCal.getTimeInMillis()){
  startCal.setTime(ActivityEndDate);
  endCal.setTime(ActivityStartDate);
}
//excluding end date
while(startCal.getTimeInMillis() < endCal.getTimeInMillis()){
  startCal.add(Calendar.DAY_OF_MONTH, 1);
  if (startCal.get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY && startCal.get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY) {
  ++workDays;
  }
}
return workDays;