`

Java计算日期今天,昨天,上周,上月

阅读更多

功能:今天,昨天,本周,上周,本月,上月

范围:以周一作为一周的第一天,每周天数5天

代码:

 

import  java.util.Date;
import  java.util.GregorianCalendar;


public   class  TestCalendar  ... {

    
public   static  String begin = "" ;
    
public   static  String end = "" ;
    
public   static  String now = new  java.sql.Date( new  Date().getTime()).toString();
    
public   static   void  main(String[] args)  ... {
    
        
// 今天
        calcToday(begin,end,now, new  GregorianCalendar());
        
// 昨天
        calcYesterday(begin,end,now, new  GregorianCalendar());
        
// 本周
        calcThisWeek(begin,end,now, new  GregorianCalendar());
        
// 上周
        calcLastWeek(begin,end,now, new  GregorianCalendar());
        
// 本月
        calcThisMonth(begin,end,now, new  GregorianCalendar());
        
// 上月
        calcLastMonth(begin,end,now, new  GregorianCalendar());
        
    }

    
public   static   void  calcToday(String begin,String end,String now,GregorianCalendar calendar) ... {
        
        begin
= now;
        end
= now;
        System.out.println(
" begin: " + begin);
        System.out.println(
" end: " + end);
        System.out.println(
" ---------------------- " );    
    }

    
    
public   static   void  calcYesterday(String begin,String end,String now,GregorianCalendar calendar) ... {

    
        calendar.add(GregorianCalendar.DATE, 
- 1 );
        begin
= new  java.sql.Date(calendar.getTime().getTime()).toString();
        end
= begin;
        System.out.println(
" begin: " + begin);
        System.out.println(
" end: " + end);
        System.out.println(
" ---------------------- " );    
    }

    
    
public   static   void  calcThisWeek(String begin,String end,String now,GregorianCalendar calendar) ... {
        end
= now;
        
int  minus = calendar.get(GregorianCalendar.DAY_OF_WEEK) - 2 ;
        
if (minus < 0 ) ... {
            System.out.println(
" 本周还没有开始,请查询上周 " );
            System.out.println(
" ---------------------- " );
        }
else ... {
    
        calendar.add(GregorianCalendar.DATE, 
- minus);
        begin
= new  java.sql.Date(calendar.getTime().getTime()).toString();
        System.out.println(
" begin: " + begin);
        System.out.println(
" end: " + end);
        System.out.println(
" ---------------------- " );
        }

    }

    
    
public   static   void  calcLastWeek(String begin,String end,String now,GregorianCalendar calendar) ... {
        
int  minus = calendar.get(GregorianCalendar.DAY_OF_WEEK) + 1 ;
        calendar.add(GregorianCalendar.DATE,
- minus);
        end
= new  java.sql.Date(calendar.getTime().getTime()).toString();
        calendar.add(GregorianCalendar.DATE,
- 4 );
        begin
= new  java.sql.Date(calendar.getTime().getTime()).toString();
        System.out.println(
" begin: " + begin);
        System.out.println(
" end: " + end);
        System.out.println(
" ---------------------- " );
    }


    
public   static   void  calcThisMonth(String begin,String end,String now,GregorianCalendar calendar) ... {
        end
= now;
        
int  dayOfMonth = calendar.get(GregorianCalendar.DATE);
        calendar.add(GregorianCalendar.DATE, 
- dayOfMonth + 1 );
        begin
= new  java.sql.Date(calendar.getTime().getTime()).toString();
        System.out.println(
" begin: " + begin);
        System.out.println(
" end: " + end);
        System.out.println(
" ---------------------- " );
    }

    
public   static   void  calcLastMonth(String begin,String end,String now,GregorianCalendar calendar) ... {
        
        calendar.set(calendar.get(GregorianCalendar.YEAR),calendar.get(GregorianCalendar.MONTH),
1 );
        calendar.add(GregorianCalendar.DATE, 
- 1 );
        end
= new  java.sql.Date(calendar.getTime().getTime()).toString();
        
        
int  month = calendar.get(GregorianCalendar.MONTH) + 1 ;
        begin
= calendar.get(GregorianCalendar.YEAR) + " - " + month + " -01 " ;
                
        System.out.println(
" begin: " + begin);
        System.out.println(
" end: " + end);
        System.out.println(
" ---------------------- " );
    }

}

 结果:

查询今天
begin:2007-12-18
end:2007-12-18
----------------------
查询昨天
begin:2007-12-17
end:2007-12-17
----------------------
查询本周
begin:2007-12-17
end:2007-12-18
----------------------
查询上周
begin:2007-12-10
end:2007-12-14
----------------------
查询本月
begin:2007-12-01
end:2007-12-18
----------------------
查询上月
begin:2007-11-01
end:2007-11-30
----------------------

分享到:
评论
1 楼 terryang 2009-07-01  
真jb难看,

相关推荐

    java获取今天、昨天、近一周、本周、本月时间段

    java获取今天、昨天、近一周、近两周、近三周、近一月、近两月、近三月、近半年、本周、上周、本月、上月时间段

    java 获取上月、一个月最后一天、周一、周日、本月日期

    Java 获取上月、一个月最后一天、周一、周日、本月日期是 Java 日期处理中的一些常见操作。下面我们将详细介绍这些操作的实现方法。 一、获取上月 获取上月可以使用 Calendar 类的 add 方法,减去一个月份。然后...

    用php获取本周,上周,本月,上月,本季度日期的代码

    在PHP编程中,获取特定时间范围的日期是常见的需求,比如获取本周、上周、本月、上月以及本季度的日期范围。这些功能可以帮助开发者在处理数据统计、报表生成或者时间相关的业务逻辑时更加便捷。下面将详细介绍如何...

    Java日期工具类

    Java日期工具类 1、日期的各种格式化 2、获取当前年度 3、获取当前月份 4、获取当前天号数 5、获取当前时间往前推一个月的时间 6、获取上个月("MMM yyyy") 7、获取上个月("yyyymm") 8、获取上个月("yyyy-mm") 9、...

    日期工具Java类

    通过正确使用java.util.Calendar、java.text.SimpleDateFormat等类,可以轻松获取如当前日期、上月日期、上周日期等特殊日期,对于日志记录、数据统计和时间追踪等功能的实现至关重要。在实际开发中,应当仔细处理...

    利用Excel公式计算上月月末日期的星期.rar

    在Excel中,计算上月月末日期的星期是一个常见的任务,特别是在数据分析、日程安排或报告制作等场景。本文将详细讲解如何通过Excel公式实现这一功能,以满足您在A列输入目标日期时,能自动得到对应上月最后一天是...

    java对日期的控制

    根据提供的代码片段,我们可以看到一系列与日期处理相关的功能,包括获取当前日期、星期几的计算、上个月的日期计算等。下面我们将详细介绍这些功能的具体实现方法。 #### 获取当前日期 ```java public String ...

    获取今天,昨天,本周,上周,本月,上月时间(实例分享)

    在JavaScript编程中,获取特定时间范围的日期是一个常见的需求,比如获取今天、昨天、本周、上周、本月和上月的时间。以下将详细解释如何通过JavaScript实现这些功能。 1. 获取今天: ```javascript var nowDate = ...

    java日期获得.pdf

    Java日期处理是编程中常见的需求,此代码示例展示了如何在Java中操作日期,包括获取当前日期、本周、本月、本年以及特定日期之间的天数差异。以下是对这些知识点的详细解释: 1. **日期时间类**:Java中的日期时间...

    Java获取各种常用时间方法

    本篇文章将详细介绍如何使用Java来获取一些常用的日期信息,包括但不限于:获取当前日期、本周一的日期、本周日的日期以及上周一的日期等。 ### 获取当前日期 通过`Calendar`类或者`LocalDate`类可以轻松地获取到...

    js 获取本周、上周、本月、上月、本季度、上季度的开始结束日期

    在JavaScript中,获取特定时间范围(如本周、上周、本月、上月、本季度、上季度)的开始和结束日期是常见的需求。以下是一个详细解释这些功能的实现方法: 首先,我们创建一个`Date`对象`now`来获取当前日期和时间...

    给定时间自动获取上月25号本月24号.doc

    在本文档中,我们将探讨Java语言中处理时间和日期计算的相关知识点。通过分析提供的代码,我们可以总结出以下重要的知识点: 1. 日期和时间的表示:在Java中,日期和时间可以用java.util.Date类和java.util....

    Java获取各种时间

    在Java编程中,获取各种时间是一项常见的任务,涉及到日期和时间的处理。Java提供了多种类和方法来实现这一目标,主要包括`java.util.Date`、`java.util.Calendar`、`java.text.SimpleDateFormat`等。下面我们将详细...

    Python 日期区间处理 (本周本月上周上月...)

    文章中所提到的工具类`CalendarUtils`是关键所在,它封装了相关的日期计算逻辑,并提供了方便的接口供用户使用。 首先,我们来探讨如何计算昨天、今天、前天和明天的日期。在`CalendarUtils`类中,`delta_day`方法...

    mysql时间日期内置函数–非常方便用于查询今天、昨天、上周,本月,上月,年度查询

    这些函数可以帮助我们快速地获取今天、昨天、上周、本月、上月以及年度的数据,使得数据分析和报告变得更为高效。以下是一些常用的MySQL时间日期函数及其用法: 1. `NOW()`:返回当前的日期和时间。 2. `CURDATE()`...

    EXCEL计算上月的天数方法例子.xls

    EXCEL计算上月的天数方法例子.xls

    基于Java Swing实现的日历记事本系统【源码+报告文档】

    本项目是一套基于Java Swing实现的日历记事本系统,主要针对计算机相关专业的正在学习java的学生与需要项目实战练习的Java学习者。 包含:项目源码、报告文档等。 项目都经过严格调试,确保可以运行! 该系统功能...

    js日期处理

    当前日期减一天 ;今天本周的第几天 ;获得某月的天数 ;获得本季度的开始月份;获得本月的开始日期;获得本月的结束日期;获得本季度的开始日期;获得本季度的结束日期;...再也不为日期的昨天,上月,季度担心了

Global site tag (gtag.js) - Google Analytics