`

Calendar

    博客分类:
  • java
阅读更多
public class CalendarUtil implements Serializable {

    /**  */
    private static final long serialVersionUID = 3491231220111885316L;

    // 获得当前日期
    public static String getDate() {
        Calendar cal = Calendar.getInstance();
        return getDate(cal);
    }

    // 获得日期
    private static String getDate(Calendar cal) {
        String v_strDate = "";
        SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
        v_strDate = formatter.format(cal.getTime());
        return v_strDate;
    }

    // 获得本周X的日期
    public static String getThisMondayDate(int dayOfWeek) {
        Calendar cal = Calendar.getInstance();
        cal.setFirstDayOfWeek(Calendar.MONDAY);
        int mondayPlus = getDayOfWeek(dayOfWeek);
        cal.set(Calendar.DAY_OF_WEEK, mondayPlus);
        return getDate(cal);
    }

    // 获得下周X的日期
    public static String getNextMondayDate(int dayOfWeek) {
        Calendar cal = Calendar.getInstance();
        cal.setFirstDayOfWeek(Calendar.MONDAY);
        int mondayPlus = getDayOfWeek(dayOfWeek);
        cal.set(Calendar.DAY_OF_WEEK, mondayPlus);
        cal.add(Calendar.DATE, 7);
        return getDate(cal);
    }

    /**
     * 获得本月X号的日期
     * 
     * @param day
     * @return
     */
    public static String getCurrentMonthBeginDate(String day) {
        Calendar cal = Calendar.getInstance();
        if ("LASTDAY".equals(day)) {
            cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DATE));
        } else {
            cal.set(Calendar.DAY_OF_MONTH, Integer.parseInt(day));
        }
        return getDate(cal);
    }

    /**
     * 获得当前日期
     * 
     * @param day
     * @return
     */
    public static String getCurrentDate() {
        Calendar cal = Calendar.getInstance();
        return getDate(cal);
    }

    /**
     * 获取星期
     * 
     * @param day
     * @return
     */
    public static int getDayOfWeek(int day) {
        int dayofweek = 0;
        switch (day) {
            case 1:
                dayofweek = Calendar.MONDAY;
                break;
            case 2:
                dayofweek = Calendar.TUESDAY;
                break;
            case 3:
                dayofweek = Calendar.WEDNESDAY;
                break;
            case 4:
                dayofweek = Calendar.THURSDAY;
                break;
            case 5:
                dayofweek = Calendar.FRIDAY;
                break;
            case 6:
                dayofweek = Calendar.SATURDAY;
                break;
            case 7:
                dayofweek = Calendar.SUNDAY;
                break;
        }
        return dayofweek;
    }

    /**
     * 获得下个月X号的日期
     * 
     * @param day
     * @return
     */
    public static String getNextMonthBeginDate(String day) {
        Calendar cal = Calendar.getInstance();

        if ("LASTDAY".equals(day)) {
            cal.set(Calendar.MONTH, cal.get(Calendar.MONTH) + 1);
            cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DATE));
        } else {
            cal.set(Calendar.MONTH, cal.get(Calendar.MONTH) + 1);
            cal.set(Calendar.DAY_OF_MONTH, Integer.parseInt(day));
        }
        return getDate(cal);
    }


    public static void main(String[] args) {
        // System.out.println(getCurrentMonthBeginDate("LASTDAY"));
//        System.out.println(getThisMondayDate(5));
//        System.out.println(getNextMondayDate(5));
        System.out.println(getCurrentDate());
    }
}

 

分享到:
评论

相关推荐

    Java 之 Date 和 Calendar 实例

    在Java编程语言中,`Date`和`Calendar`类是处理日期和时间的核心组件。这两个类在不同的Java版本中有着不同的使用方式和功能,对于理解Java时间处理机制至关重要。本篇将深入探讨`Date`和`Calendar`类的实例应用。 ...

    ASP.NET Calendar如何给每天添加日志

    ASP.NET Calendar日志添加方法 ASP.NET Calendar控件是ASP.NET中常用的日历控件,用于显示日期和事件信息。然而,在实际应用中,我们经常需要对每天添加日志信息,以便更好地记录和管理事件。本文将详细介绍如何...

    simplecalendar.js记录事件的日历插件

    《深入解析simplecalendar.js:构建记录事件的日历插件》 在现代网页设计中,日历插件已经成为不可或缺的一部分,它能帮助用户直观地管理时间安排和事件记录。"simplecalendar.js"是一款轻量级、易用且功能丰富的...

    漂亮的jQuery事件日历插件calendar.js

    **jQuery事件日历插件calendar.js详解** 在网页设计中,日历插件是一个非常实用的元素,尤其在处理日期相关的交互时。"漂亮的jQuery事件日历插件calendar.js"正是这样一个工具,它能帮助开发者轻松地在网页上集成...

    Calendar日期代码详解

    根据提供的文件信息,本文将对Java中的`Calendar`类进行详细的解析,并且通过示例代码进一步阐述其在日期与时间处理中的应用。 ### Calendar日期代码详解 #### 1. Calendar 类简介 `java.util.Calendar` 类是 ...

    Active Desktop Calendar 7.95 简体中文汉化补丁

    《Active Desktop Calendar 7.95 简体中文汉化补丁详解及应用》 Active Desktop Calendar是一款功能强大的桌面日历软件,以其便捷性和实用性深受用户喜爱。然而,对于中文用户来说,英文界面可能会带来一定的操作...

    ext js calendar 日历

    Ext JS Calendar 日历是一款强大的日历控件,适用于构建具有丰富功能的日程管理应用。它提供了多种视图,包括月视图、日视图和周视图,允许用户灵活查看和管理时间安排。本文将深入探讨Ext JS Calendar的核心组件、...

    基于Vue2-Calendar改进的日历组件(含中文使用说明)

    本文将详细介绍一个基于Vue2-Calendar组件进行改进的日历组件,该组件在原版基础上进行了多项优化,以满足更多样化的使用需求。首先,让我们了解一下Vue2-Calendar的基础知识。 Vue2-Calendar是一款适用于Vue.js...

    JAVA LunarCalendar返回农历(阴历)日期 JAR包 有包括详细DOC文档

    LunarCalendar返回农历(阴历)日期的JAR包 根据指定日期计算对应农历日期(这个计算方法是网上找的,最初的作者是谁已经无法考证了,感谢网络资源吧!),本人封装成好用的JAR包后发不出来,供大家免费下载! ...

    WebCalendar网页日历控件(js,javascript)

    WebCalendar是一款基于JavaScript的网页日历控件,它允许用户在网页上方便地选择和操作日期,极大地提升了用户在网页上的交互体验。这个控件主要适用于那些需要在网页上进行日期输入或者事件管理的应用,例如在线...

    calendar选择时间控件,绝对好用

    本文将深入探讨“calendar选择时间控件”的实现及其特点,以满足用户对于日期和时间输入的需求。 首先,一个优秀的calendar时间控件需要提供直观、易用的界面,使用户能够方便快捷地选取日期或日期与时间。正如标题...

    gnome-calendar 农历 ics 文件

    gnome-calendar是一款开源桌面环境Gnome中的日历应用,它提供了直观的日程管理功能,包括查看日期、安排事件、设置提醒等。对于中国用户来说,除了公历日期外,农历的显示也是非常重要的一项功能。本篇文章将深入...

    C#自定义控件Calendar、DatePicker样式

    标题"**C#自定义控件Calendar、DatePicker样式**"表明了这个项目的目标是通过C#编程语言,对WPF的内置`Calendar`和`DatePicker`控件进行样式定制。这通常涉及到修改控件的模板,如边框、背景、字体大小、颜色等,以...

    日历插件calendar.js

    《calendar.js:构建高效日历插件的指南》 在当今的Web开发中,日历插件已经成为不可或缺的一部分,尤其在处理与日期相关的任务时。本文将深入探讨名为"calendar.js"的JavaScript日历插件,它允许用户轻松地设置...

    PyPI 官网下载 | LunarCalendar-0.0.9.tar.gz

    《PyPI官网下载 | LunarCalendar-0.0.9.tar.gz——深入了解Python农历库》 在Python的世界里,丰富的第三方库是其强大功能的重要组成部分。本文将深入探讨一个名为"LunarCalendar"的Python库,该库可以从PyPI...

    jscalendar-1.0

    <script type=\"text/javascript\" src=\"<%=ctx%>/js/calendar/calendar.js\"> <script type=\"text/javascript\" src=\"<%=ctx%>/js/calendar/calendar-zh.js\"> ...

    Qt-Qml-Calendar_qml_QT_qml日历控件_calendar_

    标题"Qt-Qml-Calendar_qml_QT_qml日历控件_calendar_"指的是一个专门用于创建日历组件的QML项目。这个项目可能包含了完整的源代码、示例和文档,帮助开发者快速理解和应用QML日历控件到他们的Qt应用程序中。 描述中...

    jquery-week-calendar-master日历控件

    《jQuery Week Calendar控件:构建在线日程管理应用》 在Web开发中,日历控件是不可或缺的一部分,尤其对于需要处理时间安排和任务管理的应用来说。jQuery Week Calendar控件是一个强大而灵活的解决方案,它使得...

    jquery calendar.js日历选择控件带节日日历选择器

    `jQuery Calendar.js`是一款基于JavaScript库`jQuery`的插件,用于实现日历选择功能,同时它具有节日显示的功能,增强了用户体验。这个控件能够帮助用户在网页上方便地选择日期,常见于在线预订系统、事件安排或者...

    Microsoft Calendar Control 9.0.0.2607

    微软的Calendar Control 9.0.0.2607是一款经典的日历控件,它在Visual Basic(VB)环境中广泛使用,为开发者提供了一种简单直观的方式来集成日期选择功能到他们的应用程序中。这个控件的全名是MSCAL.OCX,是一个...

Global site tag (gtag.js) - Google Analytics