根据传入时间得到上一年下一年第一天和最后一天

/**
  * 获取上一年第一天的时间 返回yyyy-MM-dd
  *
  * @param
enDate
  * @return
  */
 public Date
getPreviousYearFirst(Date enDate) {
  Date date =
enDate;
  SimpleDateFormat dateFormat = new
SimpleDateFormat("yyyy");// 可以方便地修改日期格式
  String years =
dateFormat.format(date);//得到年
  int years_value =
Integer.parseInt(years);
  years_value--;//上一年
  String
fristStr = years_value + "-01-01";//得到上一年第一天
  try
{
   date = new
SimpleDateFormat("yyyy-MM-dd").parse(fristStr);
  } catch
(ParseException e)
{
   e.printStackTrace();
  }
  return
date;
 }

/**
  * 获取上一年最后一天的时间 返回yyyy-MM-dd
  * @param
enDate
  * @return
  */
 public Date
getPreviousYearEnd(Date enDate) {
  Date date =
enDate;
  SimpleDateFormat dateFormat = new
SimpleDateFormat("yyyy");// 可以方便地修改日期格式
  String years =
dateFormat.format(date);//得到年
  int years_value =
Integer.parseInt(years);
  years_value--;//上一年
  String
fristStr = years_value + "-12-31";//得到上一年最后一天
  try
{
   date = new
SimpleDateFormat("yyyy-MM-dd").parse(fristStr);
  } catch
(ParseException e)
{
   e.printStackTrace();
  }
  return
date;
 }

/**
  * 获取下一年第一天的时间 返回yyyy-MM-dd
  *
  *
@param enDate
  * @return
  */
 public Date
getNextYearFirst(Date enDate) {
  Calendar curr =
Calendar.getInstance();
  curr.setTime(enDate);//使用给定的 enDate 设置此
Calendar
的时间
  curr.set(Calendar.YEAR,curr.get(Calendar.YEAR)+1);//得到下一年
  Date
date=curr.getTime();
  GregorianCalendar gc = (GregorianCalendar)
Calendar.getInstance();
  gc.setTime(date);
  gc.get(Calendar.YEAR);
  gc.set(gc.get(Calendar.YEAR),
0, 1);//设置下一年第一天
  return gc.getTime();
 }

/**
  * 获取下一年最后一天的时间 返回yyyy-MM-dd
  *
  *
@param enDate
  * @return
  */
 public Date
getNextYearEnd(Date enDate) {
  Calendar curr =
Calendar.getInstance();
  curr.setTime(enDate);
  curr.set(Calendar.YEAR,curr.get(Calendar.YEAR)+1);//得到下一年
  Date
date=curr.getTime();
  GregorianCalendar gc = (GregorianCalendar)
Calendar.getInstance();
  gc.setTime(date);
  gc.get(Calendar.YEAR);
  gc.set(gc.get(Calendar.YEAR),
11, 31);//设置下一年最后一天
  return gc.getTime();
 }

时间: 2024-10-26 03:26:54

根据传入时间得到上一年下一年第一天和最后一天的相关文章

java代码的时间类,获取每年的第一天和最后一天

package com.fzl.util; import java.sql.Timestamp;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.Locale; public class DateUtil { /** * 默认日期格式 */ public static String DEFAUL

记录我疫情下的开学第一周

记录我疫情下的开学第一周 陈宇卿 ????我没想到我踌躇满志的一个学期是以这样的形式开始的. ????如果回到43天前,我一定会带上更多的书,再仔细检查一边宿舍的门窗和电器再出发.我仍记得出发之前,我站在B223的中央不断徘徊着,寻思着到底带不带上我厚重的剑雅全套,后来想了想往年寒假惨痛的教训,貌似回家书最大的用处是摆在旁边让我爸妈觉得我在学习.又琢磨着,情人节就在北京打美赛了,便头也不回地离开了北工大. ????然后,大家都知道了,新型冠状病毒爆发了. ????我的包里只带了两本书,<数学建模

获取下拉框第一个选项的值、最后一个选项的值、第二个选项的值

//假设网页里有下面这样一个下拉框 <select id="angelweb"> <option value=1>1</option> <option value=2>2</option> <option value=3>3</option> <option value=4>4</option> <option value=5>5</option> <

PHP在Windows下安装配置第一步

第一步就是下载和安装PHP解释器了: 1.下载Windows版本的PHP解释器,下载地址:官方下载 我下载的是 VC11 x64 Thread Safe 这个下面的zip包 2.下载完成后,解压到 C:\php 目录,然后打开目录,解压目录下有个ext子目录,保存了php的一些扩展dll 还有2个文件 ,一个 php.ini-development ,一个是 php.ini-production ,从名字也可以看出是开发环境跟生产环境的区别了 3.复制一份php.ini-development文

根据当期时间得到本周第一天和最后一天

/// <summary>        /// 根据指定接收本周第一天和最后一天        /// </summary>        /// <param name="day">当前日期</param>        /// <param name="sDate">本周第一天</param>        /// <param name="eDate">本

课下作业(第一周)

课下作业(第一周) 一.相关知识点总结 (一).教材代码完成情况测试P14(相关知识点:运行第一章所有代码并截图) (二).带包的代码编译运行测试 在Ubuntu或Windows 命令行中,建如下目录结构(参考附图) 2016XXXX(学号) src Hello.java bin Hello.java的内容见附件 package isxxxx; (xxxx替换为你的四位学号) 编译运行Hello.java ,提交运行结果截图,要全屏 课上要git add ; git commit ;课下把代码g

用了一天的时间,linux下expect实现ssh自动登录服务器记,鄙视下网上各种抄来抄去残段子

因为要对客户方的快30个项目进行特别有顺序的重启,所以不得不想办法写个脚本,网上看了不少段子.真是残缺的可以.没有一段是可以正常运行的.我来按顺序记录一下 脚本的本身 使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄.收藏.可是为什么要这么写却不知其然.本文用一个最短的例子说明脚本的原理. 脚本代码如下: ############################################## #!/usr/bin/expect set timeo

我是这样做时间管理的(下)

我都用时间记录法记录哪些 在上篇我是这样做时间管理的(上)中,我讲了我是怎么做时间记录法的, 以及使用时间记录法后对我的影响, 但很多初学时间记录法的朋友,包括之前的我, 会比较疑惑一个问题, 那就是我需要去记录哪些内容? 在刚开始做时间记录法时, 我是把当天几乎所有事情都记录下来了, 比如洗脸刷牙, 坐地铁等等, 因为当时我也不太清楚去记录什么, 所以想着干脆全部记录下来, 等记录一段时间后自然就知道该记录什么了, 比干在那想要好得多 通过全部记录的方式, 一段时间后我就有些崩溃了, 记录这些

传入时间按月分区并创建每月表空间

--1 创建每个索引分区依存的表空间declare v_ts        varchar2(40);  v_indts     varchar2(40);  v_mxtabts   varchar2(40); --明细数据表空间  v_mxindts   varchar2(40); --明细索引表空间 t_mon       date; --把传入值 转换为 日期  传入格式:201609  t_mon1      varchar2(2000);  t_qssj      date; --把传