提取指定日期的前一天

 

提取给定日期的前一天

  /**

   * 获取上一天的信息

   * @param nowDate format:2001-11-11

   * @retirm

   */

  public static String getLastDayInfo(String nowDate) {

    String yesterday = "";

    int year = 0;

    int month = 0;

    int day = 0;

    try {

      System.out.println("nowDate: " + nowDate);

      year = Integer.parseInt(nowDate.substring(0, nowDate.indexOf("-")));

      month = Integer.parseInt(nowDate.substring(nowDate.indexOf("-") + 1,

                                                 nowDate.lastIndexOf("-")));

      day = Integer.parseInt(nowDate.substring(nowDate.lastIndexOf("-") + 1));



      System.out.println("nowYear = " + year);

      System.out.println("nowMonth = " + month);

      System.out.println("dayDay = " + day);



      day = day - 1;

      if (day == 0) {

        month = month - 1;

        if (month == 0) {

          month = 12;

          day = 31;

          year = year - 1;

        }

        else {

          switch (month) {

            case 1:

              day = 31;

              break;

            case 3:

              day = 31;

              break;

            case 5:

              day = 31;

              break;

            case 7:

              day = 31;

              break;

            case 8:

              day = 31;

              break;

            case 10:

              day = 31;

              break;

            case 12:

              day = 31;

              break;

            case 4:

              day = 30;

              break;

            case 6:

              day = 30;

              break;

            case 9:

              day = 30;

              break;

            case 11:

              day = 30;

              break;

            case 2:

              if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {

                day = 29;

              }

              else {

                day = 28;

              }

          }

        }

      }

      String monthStr = "";

      String dayStr = "";

      if (month < 10) {

        monthStr = "0" + String.valueOf(month);

      }

      else {

        monthStr = String.valueOf(month);

      }

      if (day < 10) {

        dayStr = "0" + String.valueOf(day);

      }

      else {

        dayStr = String.valueOf(day);

      }



      yesterday = String.valueOf(year) + "-" + monthStr + "-" + dayStr;



    }

    catch (Exception e) {

      System.err.println(e);

    }

    return yesterday;

  }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值