dateutil.java

来自「考勤管理系统源码」· Java 代码 · 共 97 行

JAVA
97
字号
package com.wiley.compBooks.EJwithUML.Base;

import java.util.*;
import java.text.SimpleDateFormat;
import java.text.ParseException;

/**
 * Applications's definition of a Week- Monday through Sunday.
 * In Java, Sunday through Saturday.
 */
public final class DateUtil
{
  private static final SimpleDateFormat dateFormatter = new SimpleDateFormat("MM/dd/yyyy");
  private static final SimpleDateFormat dateTimeFormatter = new SimpleDateFormat("MM/DD/yyyy mm:HH:ss");

  public static final Date getNextWeekMonday(Date currentDay)
  {
    Calendar result = Calendar.getInstance();
    result.setTime(currentDay);
    int daysToAdd = result.get(Calendar.DAY_OF_WEEK)< Calendar.MONDAY ?
                    1:
                    (Calendar.MONDAY - result.get(Calendar.DAY_OF_WEEK))+7;
    result.add(Calendar.DAY_OF_WEEK, daysToAdd);
    return result.getTime();
  }

  public static final Date getCurrentWeekMonday(Date currentDay)
  {
    Calendar result = Calendar.getInstance();
    result.setTime(currentDay);
    int daysToAdd = Calendar.MONDAY > result.get(Calendar.DAY_OF_WEEK) ?
                    -6:
        (Calendar.MONDAY - result.get(Calendar.DAY_OF_WEEK));
    result.add(Calendar.DAY_OF_WEEK, daysToAdd);
    return result.getTime();
  }

  public static final Date getCurrentWeekSunday(Date currentDay)
  {
    Calendar result = Calendar.getInstance();
    result.setTime(currentDay);
    int daysToAdd = Calendar.SUNDAY == result.get(Calendar.DAY_OF_WEEK) ?
                    0:(7-result.get(Calendar.DAY_OF_WEEK))+1;
    result.add(Calendar.DAY_OF_WEEK, daysToAdd);
    return result.getTime();
  }

  public static final String toDateString(Date date)
  {
    return dateFormatter.format(date);
  }

  public static final String toDateTimeString(Date date)
  {
    return dateTimeFormatter.format(date);
  }

  public static final int getCurrentYear(Date date)
  {
    Calendar currentDate = Calendar.getInstance();
    currentDate.setTime(date);
    return currentDate.get(Calendar.YEAR);
  }

  public static final int getCurrentWeek(Date date)
  {
    Calendar currentDate = Calendar.getInstance();
    currentDate.setTime(date);
    return currentDate.get(Calendar.WEEK_OF_YEAR);
  }

  public static final int getDayOftheYear(Date date)
 {
   Calendar currentDate = Calendar.getInstance();
   currentDate.setTime(date);
   return currentDate.get(Calendar.DAY_OF_YEAR);
  }

  public static final Date createDate(String dateString) throws ParseException
  {
    return dateFormatter.parse(dateString);
  }

  public static final Date createDateTime(String dateTimeString) throws ParseException
  {
    return dateTimeFormatter.parse(dateTimeString);
  }

  public static final boolean isWithinDateRangeInclusive(Date start, Date end,
                                                     Date testDate)
  {
    return (testDate.equals(start) || testDate.equals(end) ||
            testDate.after(start) && testDate.before(end));
  }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?