java.util.Calendar#setFirstDayOfWeek ( )源码实例Demo

下面列出了java.util.Calendar#setFirstDayOfWeek ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: dhis2-android-sdk   文件: PeriodParser.java
/**
 * returns a date based on a week number
 *
 * @param year           The year of the date
 * @param week           The week of the date
 * @param calendar       The calendar used to calculate the date
 * @param firstDayOfWeek The first day of the week
 * @return The Date of the week
 */
private Date getDateTimeFromWeek(int year, int week, Calendar calendar, Integer firstDayOfWeek)
        throws IllegalArgumentException {
    if (week < 1 || week > 53) {
        throw new IllegalArgumentException("The week number is outside the year week range.");
    }

    calendar.setFirstDayOfWeek(firstDayOfWeek);
    calendar.setMinimalDaysInFirstWeek(4);
    calendar.set(Calendar.YEAR, year);
    calendar.set(Calendar.WEEK_OF_YEAR, week);
    calendar.set(Calendar.DAY_OF_WEEK, firstDayOfWeek);
    calendar.set(Calendar.HOUR_OF_DAY, 10);

    return calendar.getTime();
}
 
源代码2 项目: ClassSchedule   文件: TimeUtils.java
public static Date getThisWeekMonday(Date date) {
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    // 获得当前日期是一个星期的第几天
    int dayWeek = cal.get(Calendar.DAY_OF_WEEK);
    if (1 == dayWeek) {
        cal.add(Calendar.DAY_OF_MONTH, -1);
    }
    // 设置一个星期的第一天,按中国的习惯一个星期的第一天是星期一
    cal.setFirstDayOfWeek(Calendar.MONDAY);
    // 获得当前日期是一个星期的第几天
    int day = cal.get(Calendar.DAY_OF_WEEK);
    // 根据日历的规则,给当前日期减去星期几与一个星期第一天的差值
    cal.add(Calendar.DATE, cal.getFirstDayOfWeek() - day);
    return cal.getTime();
}
 
源代码3 项目: hop   文件: ValueDataUtil.java
public static Object yearOfDateISO8601( IValueMeta metaA, Object dataA ) throws HopValueException {
  if ( dataA == null ) {
    return null;
  }

  Calendar calendar = Calendar.getInstance( Locale.ENGLISH );
  calendar.setMinimalDaysInFirstWeek( 4 );
  calendar.setFirstDayOfWeek( Calendar.MONDAY );
  calendar.setTime( metaA.getDate( dataA ) );

  int week = calendar.get( Calendar.WEEK_OF_YEAR );
  int month = calendar.get( Calendar.MONTH );
  int year = calendar.get( Calendar.YEAR );

  // fix up for the year taking into account ISO8601 weeks
  if ( week >= 52 && month == 0 ) {
    year--;
  }
  if ( week <= 2 && month == 11 ) {
    year++;
  }

  return new Long( year );
}
 
源代码4 项目: howsun-javaee-framework   文件: Dates.java
public static boolean isThisWeek(Calendar date){
	Calendar today = Calendar.getInstance();
	date.setFirstDayOfWeek(Calendar.MONDAY);
	today.setFirstDayOfWeek(Calendar.MONDAY);
	return     date.get(Calendar.YEAR)         == today.get(Calendar.YEAR)
			&& date.get(Calendar.WEEK_OF_YEAR) == today.get(Calendar.WEEK_OF_YEAR);
}
 
源代码5 项目: Elasticsearch   文件: TimestampFormatter.java
@Override
public String format(DateTime timestamp) {
    Calendar c = Calendar.getInstance(timestamp.getZone().toTimeZone(), LOCALE);
    c.setFirstDayOfWeek(Calendar.SUNDAY);
    c.setMinimalDaysInFirstWeek(7);
    c.setTimeInMillis(timestamp.getMillis());

    int week = c.get(Calendar.WEEK_OF_YEAR);
    int weekYear = c.getWeekYear();
    int year = c.get(Calendar.YEAR);
    if (weekYear < year) {
        // get weeks from last year
        c.add(Calendar.DAY_OF_MONTH, -7);
        week = c.getWeeksInWeekYear();
    }
    return zeroPadded(2, String.valueOf(week));
}
 
源代码6 项目: AndroidBase   文件: DateUtil.java
/**
 * 获取当前日期当前一周的开始日期 (周日)
 */
public static String getCurrentWeekFirstDayByDate(String date) {
    int year = Integer.parseInt(date.substring(0, 4));
    int month = Integer.parseInt(date.substring(4, 6));
    int day = Integer.parseInt(date.substring(6));
    Calendar calendar = Calendar.getInstance();
    calendar.set(year, month - 1, day);
    Date newdate = calendar.getTime();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
    Calendar cal = Calendar.getInstance();
    cal.setTime(newdate);
    int dayWeek = cal.get(Calendar.DAY_OF_WEEK);//获得当前日期是一个星期的第几天
    if (1 == dayWeek) {
        cal.add(Calendar.DAY_OF_MONTH, -1);
    }
    cal.setFirstDayOfWeek(Calendar.SUNDAY);//设置一个星期的第一天,按中国的习惯一个星期的第一天是星期一
    int s = cal.get(Calendar.DAY_OF_WEEK);//获得当前日期是一个星期的第几天
    cal.add(Calendar.DATE, cal.getFirstDayOfWeek() - s);//根据日历的规则,给当前日期减往星期几与一个星期第一天的差值 

    String imptimeBegin = sdf.format(cal.getTime());
    //  System.out.println("所在周星期日的日期:"+imptimeBegin);
    return imptimeBegin;
}
 
源代码7 项目: Elasticsearch   文件: TimestampFormatter.java
@Override
public String format(DateTime timestamp) {
    Calendar c = Calendar.getInstance(timestamp.getZone().toTimeZone(), LOCALE);
    c.setFirstDayOfWeek(Calendar.MONDAY);
    c.setMinimalDaysInFirstWeek(4);
    c.setTimeInMillis(timestamp.getMillis());

    int week = c.get(Calendar.WEEK_OF_YEAR);
    int weekYear = c.getWeekYear();
    int year = c.get(Calendar.YEAR);
    if (weekYear < year) {
        // get weeks from last year
        c.add(Calendar.DAY_OF_MONTH, -7);
        week = c.getWeeksInWeekYear();
    }
    return zeroPadded(2, String.valueOf(week));
}
 
源代码8 项目: MyTv   文件: DateUtils.java
/**
 * 获取指定時間一周的日期列表
 * 
 * @param date
 * @return
 */
public static Date[] getWeek(Date date) {
	Date[] dates = new Date[7];
	Calendar calendar = Calendar.getInstance();
	calendar.setTime(date);
	calendar.setFirstDayOfWeek(Calendar.MONDAY);
	calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
	for (int i = 0; i < 7; i++) {
		dates[i] = calendar.getTime();
		calendar.add(Calendar.DAY_OF_YEAR, 1);
	}
	return dates;
}
 
源代码9 项目: openjdk-jdk9   文件: CalendarRegression.java
/**
 * 4080631: Calendar.hashCode is amazingly bad
 */
public void Test4080631() {
    Calendar cal = Calendar.getInstance();
    int h1 = cal.hashCode();
    cal.add(SECOND, +1);
    int h2 = cal.hashCode();
    Calendar cal2 = (Calendar) cal.clone();
    cal.add(MILLISECOND, +1);
    int h3 = cal.hashCode();
    logln("hash code: h1=" + h1 + ", h2=" + h2 + ", h3=" + h3);
    if (h1 == h2 || h1 == h3 || h2 == h3) {
        errln("hash code is poor: hashCode=" + h1);
    }
    h2 = cal2.hashCode();
    cal.add(MILLISECOND, -1);
    int h4 = cal.hashCode();
    logln("hash code: h2=" + h2 + ", h4=" + h4);
    if (cal.equals(cal2) && h2 != h4) {
        errln("broken hash code: h2=" + h2 + ", h4=" + h4);
    }
    int x = cal.getFirstDayOfWeek() + 3;
    if (x > SATURDAY) {
        x -= 7;
    }
    cal.setFirstDayOfWeek(x);
    int h5 = cal.hashCode();
    logln("hash code: h4=" + h4 + ", h5=" + h5);
    if (h4 == h5) {
        errln("has code is poor with first day of week param: hashCode=" + h4);
    }
}
 
源代码10 项目: o2oa   文件: DateOperation.java
/**
 * 获取日期在一年中的周数
 * 结果从1开始
 * @param dateString yyyy-mm-dd
 * @return
 * @throws Exception 
 */
public  int getWeekNumOfYear( String dateString ) throws Exception{
	Date date = getDateFromString( dateString , "yyyy-MM-dd");
	Calendar cal = Calendar.getInstance();
	cal.setTime(date);
	cal.setFirstDayOfWeek(2); //设置每周的第一天是星期一
	return cal.get(Calendar.WEEK_OF_YEAR);
}
 
源代码11 项目: xiaoV   文件: DateUtil.java
public static Date getFirstDayOfWeek(Date date) {
	Calendar c = new GregorianCalendar();
	c.setFirstDayOfWeek(Calendar.MONDAY);
	c.setTime(date);
	c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek()); // Monday
	return c.getTime();
}
 
private void setFirstDayOfWeekAndMinimalDaysInFirstWeek(Calendar startCalendar, int weekStartDay) {
    startCalendar.getTime();
    startCalendar.setFirstDayOfWeek(weekStartDay);
    startCalendar.setMinimalDaysInFirstWeek(4);
    startCalendar.set(Calendar.DAY_OF_WEEK, weekStartDay);

}
 
源代码13 项目: o2oa   文件: DateHelper.java
/**
 * 取得指定日期所在周的最后一天
 */
public static Date getLastDayOfWeek(Date date) {
    Calendar c = Calendar.getInstance();
    c.setFirstDayOfWeek(Calendar.SUNDAY);
    c.setTime(date);
    c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek() + 6); // Sunday
    return c.getTime();
}
 
源代码14 项目: o2oa   文件: DateOperation.java
public  String getStartOfWeek(String dateString) throws Exception{
	SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
	Date date = format.parse(dateString);
	Calendar cal = Calendar.getInstance();
	cal.setTime(date);
	cal.setFirstDayOfWeek(Calendar.MONDAY);
	int tmp = cal.get(Calendar.DAY_OF_WEEK) - 1;
	if (0 == tmp) {
		tmp = 7;
	}
	cal.add(Calendar.DATE, -(tmp-1));
	return getDateStringFromDate(cal.getTime(), "yyyy-MM-dd") + " 00:00:00";
}
 
private int getWeekCountBasedOnMode() {
    int weekCount = calendarMode.visibleWeeksCount;
    boolean isInMonthsMode = calendarMode.equals(CalendarMode.MONTHS);
    if (isInMonthsMode && mDynamicHeightEnabled && adapter != null && pager != null) {
        Calendar cal = (Calendar) adapter.getItem(pager.getCurrentItem()).getCalendar().clone();
        cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH));
        //noinspection ResourceType
        cal.setFirstDayOfWeek(getFirstDayOfWeek());
        weekCount = cal.get(Calendar.WEEK_OF_MONTH);
    }
    return weekCount + DAY_NAMES_ROW;
}
 
源代码16 项目: symphonyx   文件: Times.java
/**
 * Gets the week start time with the specified time.
 *
 * @param time the specified time
 * @return week start time
 */
public static long getWeekStartTime(final long time) {
    final Calendar start = Calendar.getInstance();

    start.setFirstDayOfWeek(Calendar.MONDAY);

    start.setTimeInMillis(time);
    start.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
    start.set(Calendar.HOUR, 0);
    start.set(Calendar.MINUTE, 0);
    start.set(Calendar.SECOND, 0);
    start.set(Calendar.MILLISECOND, 0);

    return start.getTime().getTime();
}
 
源代码17 项目: o2oa   文件: DateOperation.java
/**
 * 获取日期在一年中的周数
 * 结果从1开始
 * @param dateString yyyy-mm-dd
 * @return
 */
public  int getWeekNumOfYear( Date date ){
	try {
		Calendar cal = Calendar.getInstance();
		cal.setTime(date);
		cal.setFirstDayOfWeek(2);//设置每周的第一天是星期一
		return cal.get( Calendar.WEEK_OF_YEAR );
	} catch (Exception e) {
		logger.warn( "系统getWeekNumOfYear发生异常");
		logger.error(e);
	}
	return -1;
}
 
源代码18 项目: o2oa   文件: DateOperation.java
public  String getEndOfWeek(String dateString) throws Exception{
	Date date = getDateFromString(getStartOfWeek(dateString), "yyyy-MM-dd HH:mm:ss");
	Calendar cal = Calendar.getInstance();
	cal.setTime(date);
	cal.setFirstDayOfWeek(Calendar.MONDAY);
	cal.add(Calendar.DATE, 6);
	return getDateStringFromDate(cal.getTime(), "yyyy-MM-dd") + " 23:59:59";
}
 
源代码19 项目: phoebus   文件: IndexNameHelper.java
private void setDateSpanStartAndEnd(Instant time)
{
    Calendar calendar = new GregorianCalendar();
    calendar.setTimeInMillis(time.toEpochMilli());
    calendar.setFirstDayOfWeek(Calendar.SUNDAY);

    Integer dateSpanField = -1;

    if (dateSpanUnit.equals(YEAR))
    {
        // Roll the year back to the beginning (midnight of the first of the year).
        dateSpanField = Calendar.YEAR;
        calendar.set(Calendar.MONTH, Calendar.JANUARY);
        calendar.set(Calendar.WEEK_OF_MONTH, 1);
        calendar.set(Calendar.DAY_OF_MONTH, 1);
    }
    if (dateSpanUnit.equals(MONTH))
    {
        // Roll the month back to the beginning (midnight of the first of the month).
        dateSpanField = Calendar.MONTH;
        calendar.set(Calendar.WEEK_OF_MONTH, 1);
        calendar.set(Calendar.DAY_OF_MONTH, 1);
    }
    if (dateSpanUnit.equals(WEEK))
    {
        // Roll the week back to the beginning (midnight Sunday).
        dateSpanField = Calendar.WEEK_OF_YEAR;
        calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
    }
    if (dateSpanUnit.equals(DAY))
        dateSpanField = Calendar.DATE;

    // Roll the day back to midnight
    calendar.set(Calendar.HOUR_OF_DAY, 0);
    calendar.set(Calendar.MINUTE, 0);
    calendar.set(Calendar.SECOND, 0);
    calendar.set(Calendar.MILLISECOND, 0);

    spanStart = calendar.toInstant();

    calendar.add(dateSpanField, dateSpanValue);

    spanEnd = calendar.toInstant();
}
 
源代码20 项目: mvvm-template   文件: DatesUtils.java
/**
 * Return if the date given is a first day of week
 *
 * @param year
 *         The year of the date.
 * @param month
 *         The month of the date.
 * @param day
 *         The day of the date.
 * @return true or false
 */
@SuppressLint("WrongConstant") public static boolean isFirstDayOfWeek(int year, int month, int day) {
    Calendar calendar = Calendar.getInstance();
    calendar.set(year, month - 1, day);
    calendar.add(Calendar.SECOND, 0);
    calendar.setFirstDayOfWeek(Calendar.SUNDAY);

    return calendar.get(Calendar.DAY_OF_WEEK) == 1;
}