分享

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

 Mis林桑 2017-03-25

      本文给大家分享的是使用使用java的Calendar对象获得当前日期的上几个度开始、结束时间,主要思路是先获得当前季度的开始和结束日期,在当前日期的基础上往前推3个月即上个季度的开始和结束日期,十分的实用,小伙伴们可以参考下。

      思路:

      先获得当前季度的开始和结束日期,在当前日期的基础上往前推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; 

      } 

      文章来源:http://www./article.php?CID=26&ID=677

      了解更多内容可登录中软国际官方网站:www.

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约