休日を判定する
祝日判定は以下のクラスを使用
http://www.abiru.jp/obsolutes/souko/KtHoliday_Java/KtHolidayJava_source.html
def isHoliday(date){ cal = Calendar.getInstance() cal.setTime(new Date(date)) println date println (!"".equals(KtHoliday.getHolidayName(date))) || (cal.get(Calendar.DAY_OF_WEEK) == 1 ) || (cal.get(Calendar.DAY_OF_WEEK) == 7) } def getHolidayName(date){ println date cal = Calendar.getInstance() cal.setTime(new Date(date)) name = KtHoliday.getHolidayName(date) if (!"".equals(name)) { println name return } if (cal.get(Calendar.DAY_OF_WEEK) == 1 ) { println "日曜日" return } if (cal.get(Calendar.DAY_OF_WEEK) == 7) { println "土曜日" return } println "平日" } isHoliday("2009/12/28") isHoliday("2010/1/1") isHoliday("2010/1/11") isHoliday("2010/1/15") getHolidayName("2009/12/28") getHolidayName("2010/1/1") getHolidayName("2010/1/11") getHolidayName("2010/1/15")
実行環境
- OS:Windows XP
- Groovy Version: 1.6.5
- JVM: 1.6.0_12
[D:\workspace\groovy_SandBox]groovy -cp D:\workspace_other\Holidays.java\www.abiru.jp isHoliday.groovy 2009/12/28 false 2010/1/1 true 2010/1/11 true 2010/1/15 false 2009/12/28 平日 2010/1/1 元日 2010/1/11 成人の日 2010/1/15 平日
OSSで有名どろころのライブラリがあった気がするんだけど見つからなので。。。