Java获取的一天、本星期、这个月、本季度、一年等 开始和结束时间
1.代码
- package com.zhaochao.utils;
- import java.text.SimpleDateFormat;
- import java.util.Calendar;
- import java.util.Date;
- public class DataUill {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- System.out.println("当天24点时间:" + getTimesnight().toLocaleString());
- System.out.println("当前时间:" + new Date().toLocaleString());
- System.out.println("当天0点时间:" + getTimesmorning().toLocaleString());
- System.out.println("昨天0点时间:" + getYesterdaymorning().toLocaleString());
- System.out.println("近7天时间:" + getWeekFromNow().toLocaleString());
- System.out.println("本周周一0点时间:" + getTimesWeekmorning().toLocaleString());
- System.out.println("本周周日24点时间:" + getTimesWeeknight().toLocaleString());
- System.out.println("本月初0点时间:" + getTimesMonthmorning().toLocaleString());
- System.out.println("本月未24点时间:" + getTimesMonthnight().toLocaleString());
- System.out.println("上月初0点时间:" + getLastMonthStartMorning().toLocaleString());
- System.out.println("本季度開始点时间:" + getCurrentQuarterStartTime().toLocaleString());
- System.out.println("本季度结束点时间:" + getCurrentQuarterEndTime().toLocaleString());
- System.out.println("本年開始点时间:" + getCurrentYearStartTime().toLocaleString());
- System.out.println("本年结束点时间:" + getCurrentYearEndTime().toLocaleString());
- System.out.println("上年開始点时间:" + getLastYearStartTime().toLocaleString());
- }
- // 获得当天0点时间
- public static Date getTimesmorning() {
- Calendar cal = Calendar.getInstance();
- cal.set(Calendar.HOUR_OF_DAY, 0);
- cal.set(Calendar.SECOND, 0);
- cal.set(Calendar.MINUTE, 0);
- cal.set(Calendar.MILLISECOND, 0);
- return cal.getTime();
- }
- // 获得昨天0点时间
- public static Date getYesterdaymorning() {
- Calendar cal = Calendar.getInstance();
- cal.setTimeInMillis(getTimesmorning().getTime()-3600*24*1000);
- return cal.getTime();
- }
- // 获得当天近7天时间
- public static Date getWeekFromNow() {
- Calendar cal = Calendar.getInstance();
- cal.setTimeInMillis( getTimesmorning().getTime()-3600*24*1000*7);
- return cal.getTime();
- }
- // 获得当天24点时间
- public static Date getTimesnight() {
- Calendar cal = Calendar.getInstance();
- cal.set(Calendar.HOUR_OF_DAY, 24);
- cal.set(Calendar.SECOND, 0);
- cal.set(Calendar.MINUTE, 0);
- cal.set(Calendar.MILLISECOND, 0);
- return cal.getTime();
- }
- // 获得本周一0点时间
- public static Date getTimesWeekmorning() {
- Calendar cal = Calendar.getInstance();
- cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONDAY), cal.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
- cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
- return cal.getTime();
- }
- // 获得本周日24点时间
- public static Date getTimesWeeknight() {
- Calendar cal = Calendar.getInstance();
- cal.setTime(getTimesWeekmorning());
- cal.add(Calendar.DAY_OF_WEEK, 7);
- return cal.getTime();
- }
- // 获得本月第一天0点时间
- public static Date getTimesMonthmorning() {
- Calendar cal = Calendar.getInstance();
- cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONDAY), cal.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
- cal.set(Calendar.DAY_OF_MONTH, cal.getActualMinimum(Calendar.DAY_OF_MONTH));
- return cal.getTime();
- }
- // 获得本月最后一天24点时间
- public static Date getTimesMonthnight() {
- Calendar cal = Calendar.getInstance();
- cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONDAY), cal.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
- cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH));
- cal.set(Calendar.HOUR_OF_DAY, 24);
- return cal.getTime();
- }
- public static Date getLastMonthStartMorning() {
- Calendar cal = Calendar.getInstance();
- cal.setTime(getTimesMonthmorning());
- cal.add(Calendar.MONTH, -1);
- return cal.getTime();
- }
- public static Date getCurrentQuarterStartTime() {
- Calendar c = Calendar.getInstance();
- int currentMonth = c.get(Calendar.MONTH) + 1;
- SimpleDateFormat longSdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- SimpleDateFormat shortSdf = new SimpleDateFormat("yyyy-MM-dd");
- Date now = null;
- try {
- if (currentMonth >= 1 && currentMonth <= 3)
- c.set(Calendar.MONTH, 0);
- else if (currentMonth >= 4 && currentMonth <= 6)
- c.set(Calendar.MONTH, 3);
- else if (currentMonth >= 7 && currentMonth <= 9)
- c.set(Calendar.MONTH, 4);
- else if (currentMonth >= 10 && currentMonth <= 12)
- c.set(Calendar.MONTH, 9);
- c.set(Calendar.DATE, 1);
- now = longSdf.parse(shortSdf.format(c.getTime()) + " 00:00:00");
- } catch (Exception e) {
- e.printStackTrace();
- }
- return now;
- }
- /**
- * 当前季度的结束时间。即2012-03-31 23:59:59
- *
- * @return
- */
- public static Date getCurrentQuarterEndTime() {
- Calendar cal = Calendar.getInstance();
- cal.setTime(getCurrentQuarterStartTime());
- cal.add(Calendar.MONTH, 3);
- return cal.getTime();
- }
- public static Date getCurrentYearStartTime() {
- Calendar cal = Calendar.getInstance();
- cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONDAY), cal.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
- cal.set(Calendar.DAY_OF_MONTH, cal.getActualMinimum(Calendar.YEAR));
- return cal.getTime();
- }
- public static Date getCurrentYearEndTime() {
- Calendar cal = Calendar.getInstance();
- cal.setTime(getCurrentYearStartTime());
- cal.add(Calendar.YEAR, 1);
- return cal.getTime();
- }
- public static Date getLastYearStartTime() {
- Calendar cal = Calendar.getInstance();
- cal.setTime(getCurrentYearStartTime());
- cal.add(Calendar.YEAR, -1);
- return cal.getTime();
- }
- }
2.结果
- 当天24点时间:2015-1-18 0:00:00
- 当前时间:2015-1-17 10:50:57
- 当天0点时间:2015-1-17 0:00:00
- 昨天0点时间:2015-1-16 0:00:00
- 近7天时间:2015-1-10 0:00:00
- 本周周一0点时间:2015-1-12 0:00:00
- 本周周日24点时间:2015-1-19 0:00:00
- 本月初0点时间:2015-1-1 0:00:00
- 本月未24点时间:2015-2-1 0:00:00
- 上月初0点时间:2014-12-1 0:00:00
- 本季度開始点时间:2015-1-1 0:00:00
- 本季度结束点时间:2015-4-1 0:00:00
- 本年開始点时间:2015-1-1 0:00:00
- 本年结束点时间:2016-1-1 0:00:00
- 上年開始点时间:2014-1-1 0:00:00
版权声明:本文博客原创文章。博客,未经同意,不得转载。
Java获取的一天、本星期、这个月、本季度、一年等 开始和结束时间的更多相关文章
- c# 获取 本周、本月、本季度、本年 的开始时间或结束时间
#region 获取 本周.本月.本季度.本年 的开始时间或结束时间 /// <summary> /// 获取结束时间 /// </summary> /// <param ...
- 写sql语句分别按日,星期,月,季度,年统计
--写sql语句分别按日,星期,月,季度,年统计销售额 --按日 ' group by day([date]) --按周quarter ' group by datename(week,[date]) ...
- Java获取当天、本周、本月、本季度、本年等 开始及结束时间
package com.zhaochao.utils; import java.text.SimpleDateFormat; import java.util.Calendar; import jav ...
- JAVA获取当前日期指定月份后(多少个月后)的日期
环境要求:使用jdk1.8 package com.date; import java.text.ParseException; import java.text.SimpleDateFormat; ...
- C#根据当前时间获取周,月,季度,年度等时间段的起止时间
最近有个统计分布的需求,需要按统计本周,上周,本月,上月,本季度,上季度,本年度,上年度等时间统计分布趋势,所以这里就涉及到计算周,月,季度,年度等的起止时间了,下面总结一下C#中关于根据当前时间获取 ...
- Java获取各种常用时间方法大全
Java获取各种常用时间方法大全 package cc.javaweb.test; Java中文网,Java获取各种时间大全 import java.text.DateFormat; import j ...
- [Java] 获取本月周次和日期时间段信息
package com.wdcloud.monitoring.common; import java.text.SimpleDateFormat; import java.util.ArrayList ...
- 学JAVA第四天,JAVA获取年月日
先添加引用import java.util.Calendar; 然后编写代码: Calendar calendar = null;//声明 calendar= Calendar.getInstance ...
- java 获取 获取某年某月 所有日期(yyyy-mm-dd格式字符串)
总结一些日期常用的代码,方便以后直接拿 <code> /** * java 获取 获取某年某月 所有日期(yyyy-mm-dd格式字符串) * @param year * @param m ...
随机推荐
- facebook打开动画pop
POP源代码:https://github.com/facebook/pop demo相关链接:https://github.com/jxd001/POPdemo/blob/master/README ...
- wwwtyro/cellophane
wwwtyro/cellophane A dead simple web terminal that gets all of the boilerplate out of the way and le ...
- [置顶] ※数据结构※→☆线性表结构(stack)☆============栈 序列表结构(stack sequence)(六)
栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表.栈是一种数据结构,它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据.栈 ...
- php学习之道:WSDL具体解释(三)
通过声明方式定义绑定(binding)属性 假设你在服务中採用SOAP binding.你能够使用JAX-WS来指定一定数量的属性binding. 这些属性指定相应你在WSDL中指定的属性.某些设置. ...
- [Linux]Centos git报错fatal: HTTP request failed
在使用git pull.git push.git clone会报类似例如以下的错误: error: The requested URL returned error: 401 Unauthorized ...
- java 线程 ProducerAndConsumer
package j2se.thread.demo; /** * <p>Project:J2SE 的基础知识</p> * <p>Tile:多线程模拟 生产者 和 消费 ...
- JavaFX的扩展控件库ControlsFX介绍
声明: 本博客文章原创类别的均为个人原创,版权所有.转载请注明出处: http://blog.csdn.net/ml3947,另外本人的个人博客:http://www.wjfxgame.com. ...
- poj1935(树形dp)
题目链接:http://poj.org/problem?id=1935 题意:带边权的树,给点一个根,问从根出发遍历某些点,所需的最小花费. 分析:树上任意两点的路径是唯一的,直接dfs一遍,可以得出 ...
- AlarmManager的学习与实现
综述 这个类提供了一种使用系统提供的alarm服务.这个服务同意用户安排他们的应用程序在将来的某一个时间点执行.当设置的alarm响起,那么之前系统为这个alarm注冊的Intent就会自己主 ...
- 道破Redis的VM
原创文章是freas_1990.转载请注明出处:http://blog.csdn.net/freas_1990/article/details/42052813 Redis唯一的那个key的value ...