当前位置: 首页 > news >正文

java获取当前上一周、上一月、上一年的时间

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar c = Calendar.getInstance();
1.过去七天
c.setTime(new Date());
c.add(Calendar.DATE, - 7);
Date d = c.getTime();
String day = format.format(d);
System.out.println("过去七天:"+day);
2.过去一月
c.setTime(new Date());
c.add(Calendar.MONTH, -1);
Date m = c.getTime();
String mon = format.format(m);
System.out.println("过去一个月:"+mon);
3.过去三个月
c.setTime(new Date());
c.add(Calendar.MONTH, -3);
Date m3 = c.getTime();
String mon3 = format.format(m3);
System.out.println("过去三个月:"+mon3);
4.过去一年
c.setTime(new Date());
c.add(Calendar.YEAR, -1);
Date y = c.getTime();
String year = format.format(y);
System.out.println("过去一年:"+year);
5.现在时间24小时制  
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
String nowDate=format.format(new Date());  
System.out.println(nowDate);  
6.当天的开始时间  
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
Calendar c = Calendar.getInstance();  
String start = format.format(c.getTime())+" 00:00:00";  
System.out.println(start);  
7.当天的截止时间  
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
Calendar calendar = Calendar.getInstance();  
String end = format.format(calendar.getTime())+" 23:59:59";  
System.out.println(end);  
8.当前时间的前一个星期 开始时间  
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
Calendar c = Calendar.getInstance();  
c.add(Calendar.DAY_OF_MONTH, -6);  
String start = format.format(c.getTime())+" 00:00:00";  
System.out.println(start);  
9.当天日期前一个月  
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
Calendar c = Calendar.getInstance();  
c.add(Calendar.MONTH, -1);    //得到前一个月    
String start = format.format(c.getTime())+" 00:00:00";  
System.out.println(start);  
10.当前时间的前一年开始时间  
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
Calendar c = Calendar.getInstance();  
c.add(Calendar.YEAR, -1); //年份减1   
String start =format.format(c.getTime())+" 00:00:00";  
System.out.println(start);  
11.当前时间的周一时间和周末时间 setfirstdayofweek()方法  
SimpleDateFormat format  = new SimpleDateFormat("YYYY-MM-dd ");  
Calendar c = Calendar.getInstance();  
c.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);  
String weekStart = format.format(c.getTime())+" 00:00:00";  
System.out.println(weekStart);  
Calendar ca = Calendar.getInstance();  
ca.setFirstDayOfWeek(Calendar.MONDAY);  
ca.set(Calendar.DAY_OF_WEEK, ca.getFirstDayOfWeek() + 6); // Sunday  
String weekEnd = format.format(ca.getTime())+" 23:59:59";  
System.out.println(weekEnd);  
12.当前时所在月份的第一天和最后一天  
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");  
Calendar c = Calendar.getInstance();      
c.set(Calendar.DAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天   
String monthStart = format.format(c.getTime())+" 00:00:00";  
System.out.println(monthStart);  
Calendar ca = Calendar.getInstance();      
ca.set(Calendar.DAY_OF_MONTH, ca.getActualMaximum(Calendar.DAY_OF_MONTH));    
String monthEnd = format.format(ca.getTime())+" 23:59:59";  
System.out.println(monthEnd);  
13.当期时间所在年份的开始时间  
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");  
Calendar c = Calendar.getInstance();  
c.set(c.get(Calendar.YEAR) ,0, 1);//开始时间日期  
String yearStart = format.format(c.getTime())+" 00:00:00";  
System.out.println(yearStart);  
Calendar ca = Calendar.getInstance();  
ca.set(ca.get(Calendar.YEAR) ,11, ca.getActualMaximum(Calendar.DAY_OF_MONTH));//结束日期  
String yearEnd = format.format(ca.getTime())+" 23:59:59";  
System.out.println(yearEnd);  
14.计算时间差取得两个时间的微秒级的时间差
//得微秒级时间差    
long val = calendarEnd.getTimeInMillis() - calendarBegin.getTimeInMillis();    
//换算后得到天数    
long day = val / (1000 * 60 * 60 * 24);
15.获取某个时间的上周一和周日
Calendar cal = Calendar.getInstance();
//n为推迟的周数,1本周,-1向前推迟一周,2下周,依次类推
int n = 1;
String monday;
cal.add(Calendar.DATE, n*7);
//想周几,这里就传几Calendar.MONDAY(TUESDAY...)
cal.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);
monday = new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime());
System.out.println(monday);

转载于:https://www.cnblogs.com/Jansens520/p/7825750.html

相关文章:

  • mysql-proxy实现读写分离
  • Linux基本命令—权限管理、文件搜索、帮助、压缩解压、网络通信
  • 中英文金额大写转换器
  • 计算机基础作业
  • 应急响应小总结
  • 课后作业-阅读任务-阅读提问-3
  • HttpClient实现POST参数提交
  • 代码式书写404页面
  • idHttp 中GET POST应用
  • 超级小的web手势库AlloyFinger
  • java中的字符串二
  • [转]Ubuntu安装rabbitMq
  • 如何下载中文语言包让Eclipse汉化?
  • 20171121_Python学习六周二次课(11月21日)
  • Git reset到某一次commit
  • python3.6+scrapy+mysql 爬虫实战
  • 【RocksDB】TransactionDB源码分析
  • Java读取Properties文件的六种方法
  • Java反射-动态类加载和重新加载
  • jdbc就是这么简单
  • JS 面试题总结
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • php ci框架整合银盛支付
  • Redis 中的布隆过滤器
  • Sublime text 3 3103 注册码
  • Three.js 再探 - 写一个跳一跳极简版游戏
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 两列自适应布局方案整理
  • 入手阿里云新服务器的部署NODE
  • 深度学习在携程攻略社区的应用
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • 用jQuery怎么做到前后端分离
  • 如何在 Intellij IDEA 更高效地将应用部署到容器服务 Kubernetes ...
  • # 日期待t_最值得等的SUV奥迪Q9:空间比MPV还大,或搭4.0T,香
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (分享)自己整理的一些简单awk实用语句
  • (附源码)php新闻发布平台 毕业设计 141646
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (附源码)计算机毕业设计ssm高校《大学语文》课程作业在线管理系统
  • (剑指Offer)面试题41:和为s的连续正数序列
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (已解决)什么是vue导航守卫
  • (转)我也是一只IT小小鸟
  • (转载)Linux网络编程入门
  • **PHP分步表单提交思路(分页表单提交)
  • .mkp勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .Net FrameWork总结
  • .NET与 java通用的3DES加密解密方法
  • @data注解_SpringBoot 使用WebSocket打造在线聊天室(基于注解)
  • [ 隧道技术 ] 反弹shell的集中常见方式(二)bash反弹shell
  • [ 云计算 | Azure 实践 ] 在 Azure 门户中创建 VM 虚拟机并进行验证
  • [AS3]URLLoader+URLRequest+JPGEncoder实现BitmapData图片数据保存