软件编程
位置:首页>> 软件编程>> java编程>> 使用java的Calendar对象获得当前日期

使用java的Calendar对象获得当前日期

作者:hebedich  发布时间:2023-10-11 16:24:23 

标签:java,Calendar对象

思路:

先获得当前季度的开始和结束日期,在当前日期的基础上往前推3个月即上个季度的开始和结束日期


/**
  * @param flag true:开始日期;false:结束日期
  * @return
  */
 public static String getLastQuarterTime(boolean flag){
   SimpleDateFormat shortSdf = new SimpleDateFormat("yyyy-MM-dd");
   SimpleDateFormat longSdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String resultDate="";
   Date now = null;
   try {
     Calendar calendar = Calendar.getInstance();
     int currentMonth = calendar.get(Calendar.MONTH) + 1;
     //true:开始日期;false:结束日期
     if(flag){
       if (currentMonth >= 1 && currentMonth <= 3)
         calendar.set(Calendar.MONTH, 0);
       else if (currentMonth >= 4 && currentMonth <= 6)
         calendar.set(Calendar.MONTH, 3);
       else if (currentMonth >= 7 && currentMonth <= 9)
         calendar.set(Calendar.MONTH, 6);
       else if (currentMonth >= 10 && currentMonth <= 12)
         calendar.set(Calendar.MONTH, 9);
       calendar.set(Calendar.DATE, 1);

now = longSdf.parse(shortSdf.format(calendar.getTime()) + " 00:00:00");
     }else{
       if (currentMonth >= 1 && currentMonth <= 3) {
         calendar.set(Calendar.MONTH, 2);
         calendar.set(Calendar.DATE, 31);
       } else if (currentMonth >= 4 && currentMonth <= 6) {
         calendar.set(Calendar.MONTH, 5);
         calendar.set(Calendar.DATE, 30);
       } else if (currentMonth >= 7 && currentMonth <= 9) {
         calendar.set(Calendar.MONTH, 8);
         calendar.set(Calendar.DATE, 30);
       } else if (currentMonth >= 10 && currentMonth <= 12) {
         calendar.set(Calendar.MONTH, 11);
         calendar.set(Calendar.DATE, 31);
       }
       now = longSdf.parse(shortSdf.format(calendar.getTime()) + " 23:59:59");
     }
     calendar.setTime(now);// 设置日期
     calendar.add(Calendar.MONTH, -3);
     resultDate = longSdf.format(calendar.getTime());

} catch (Exception e) {
     ;
   }
   return resultDate;
 }
0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com