Java examples for java.util:Week
get Time For First Day Of Week
/*//from ww w .j a v a 2 s . c o m * Copyright 2009 Yodlee, Inc. All Rights Reserved. Your use of this code * requires a license from Yodlee. Any such license to this code is * restricted to evaluation/illustrative purposes only. It is not intended * for use in a production environment, and Yodlee disclaims all warranties * and/or support obligations concerning this code, regardless of the terms * of any other agreements between Yodlee and you." */ //package com.java2s; import java.util.Calendar; public class Main { public static void main(String[] argv) throws Exception { Calendar calendar = Calendar.getInstance(); System.out.println(getTimeForFirstDayOfWeek(calendar)); } public static Long getTimeForFirstDayOfWeek(Calendar calendar) { Calendar tempCalendar = (Calendar) calendar.clone(); setTimeAsFirstDayOfWeek(tempCalendar); return new Long(tempCalendar.getTimeInMillis()); } public static void setTimeAsFirstDayOfWeek(Calendar calendar) { int monthBeforeSet = calendar.get(Calendar.MONTH); calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); int monthAfterSet = calendar.get(Calendar.MONTH); // if year changes setMinimalDaysInFirstWeek for New Year if (monthBeforeSet == Calendar.JANUARY && monthAfterSet == Calendar.DECEMBER) { calendar.setMinimalDaysInFirstWeek(calculateMinimalDaysInFirstWeek(calendar)); } normalise(calendar); } public static int calculateMinimalDaysInFirstWeek(Calendar calendar) { Calendar temp = (Calendar) calendar.clone(); temp.set(Calendar.DAY_OF_YEAR, 1); int firstDayOfJan = temp.get(Calendar.DAY_OF_WEEK); return 8 - firstDayOfJan; } public static void normalise(Calendar calendar) { Calendar tempCalendar = (Calendar) calendar.clone(); calendar.clear(); calendar.set(Calendar.YEAR, tempCalendar.get(Calendar.YEAR)); calendar.set(Calendar.DAY_OF_YEAR, tempCalendar.get(Calendar.DAY_OF_YEAR)); } }