`
liyanhui
  • 浏览: 350496 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

提取给定日期的前一天

 
阅读更多
  /**

   * 获取上一天的信息

   * @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;

  }
分享到:
评论

相关推荐

    ABAP计算日期的函数

    6. **WEEK_GET_FIRST_DAY**:可以找到给定日期所在周的第一天,即周一的日期,这对于日程规划、会议安排等有直接帮助。 7. **CCM_GO_BACK_MONTHS & RP_CALC_DATE_IN_INTERVAL**:前者用于回溯到指定月份前的日期,...

    Power+Query+函数库+(February+2015+含标签).pdf

    - **4.13 是否在前一日(4.13 Date.IsInPreviousDay)**:判断给定日期是否在当前日期的前一天。 - **4.14 是否在当前日(4.14 Date.IsInCurrentDay)**:判断给定日期是否在当前日期当天。 - **4.15 是否在后一日(4.15 ...

    MySQL时间日期相关函数

    - 返回给定日期所在月份的最后一天。 12. **EXTRACT()**: - 从日期时间中提取指定的时间部分(如 YEAR, QUARTER, MONTH 等)。 在实际应用中,这些函数常常结合使用,例如,用于过滤特定日期范围的数据、计算...

    Oracle日期函数

    - `LAST_DAY(date)`:返回给定日期所在月份的最后一天。 5. **时间间隔计算**: - `MONTHS_BETWEEN(date1, date2)`:计算两个日期之间的月份数。 - `NUMTODSINTERVAL(value, 'unit')` 和 `TO_DSINTERVAL(value, ...

    Excel时间函数[收集].pdf

    - `WORKDAY`函数返回给定日期前或后的第一个工作日,可以排除周末和指定的假期。 - `EOMONTH`函数返回给定日期所在月份的最后一天。 这些时间函数的组合使用可以实现复杂的日期计算,例如计算两个日期之间的差值...

    Mysql指定日期区间的提取方法

    1. `ADDDATE(expr, days)` 和 `SUBDATE(expr, days)`:这两个函数分别用于在给定日期上增加或减少一定的时间间隔。`days` 可以是一个整数,后面跟着时间单位,如 `INTERVAL 1 DAY` 表示一天。 示例: ```sql ...

    sybase日期函数

    select dateadd(hour, -2, getdate()) -- 当前日期前2小时 ``` 5. **日期和时间的字符串格式化**: Sybase 提供了 `convert()` 函数将日期时间转换为不同格式的字符串。例如: ``` select convert(char, ...

    js检测判断日期大于多少天的方法

    然后,它找到id为"time"的ul元素,并从中提取第一个span元素的日期字符串。接着,它将日期字符串解析成年、月、日和时间的各个部分,并创建一个表示指定日期的`oldTime`Date对象。同时,`nowTime`Date对象表示当前...

    数据库日期格式处理(Oracle).docx

    - `LAST_DAY` 函数返回给定月份的最后一天,如 `LAST_DAY(SYSDATE)` 得到当前月的最后一天。 6. **处理月份天数**: - 对于不同月份天数的处理,可以使用 `ADD_MONTHS` 和 `LAST_DAY` 结合使用,例如 `ADD_MONTHS...

    SQL所有日期函数用法[参考].pdf

    在实际应用中,`DateAdd`和`DateDiff`函数经常结合使用,比如计算某个日期前或后的特定日期,或者找出两个日期间的精确时间间隔。例如,如果你想知道2007年2月9日之后的30天是哪一天,你可以使用`DateAdd("d", 30, ...

    Java时间函数大全[参考].pdf

    首先,`getEndDateOfMonth` 函数用于获取给定日期所在月份的最后一天。它通过检查月份来确定是否有30天或31天,对于二月,它会判断是否为闰年来决定是28天还是29天。这个函数可以用于确定某个时间段的边界或者计算...

    DateUtils.rar

    8. **日期计算**:计算下一个工作日、特定星期几的日期,或者给定日期前/后的特定日期。 9. **日期的有效性检查**:验证日期是否在有效范围内,例如是否早于当前日期,或者是否晚于某个截止日期。 10. **闰年和节...

    Clase 3 - Funciones de fechas_excel_

    3. **EOMONTH函数**: 这个函数用于获取给定日期所在月份的最后一天。例如,`=EOMONTH(TODAY(), 2)` 将返回两个月后的最后一天。 4. **YEAR、MONTH和DAY函数**: 这些函数分别用于提取日期中的年份、月份和日期部分。...

    JS根据生日月份和日期计算星座的简单实现方法

    2. 定义一个数组,用来存放每个星座开始日期的前一天,即12个星座中除了魔羯座的第一个日期外,其余星座的起始日期都是前一天。例如,魔羯座的起始日期是12月22日,而水瓶座的起始日期是1月20日,所以数组中的第一个...

    BLOG_Oracle_lhr_函数系列(2)-- 数学函数及日期函数.pdf

    4. `LAST_DAY(date)`:返回给定日期所在月份的最后一天。 5. `NEXT_DAY(date,day_of_week)`:找到给定日期之后的第一个指定星期几。 6. `TRUNC(date,[format])`:截断日期,可以按照年、月、日等不同级别进行。 7. `...

    oracle 日期时间函数使用总结

    3. `last_day(date)` 函数返回给定日期所在月份的最后一天。 4. `add_months(date, months)` 函数用于向日期添加指定的月数,如 `add_months(sysdate, 3)` 返回三个月后的日期。 三、其他日期时间函数 - `next_...

    三天打渔两天晒网

    “三天打渔两天晒网”的规则意味着在连续五天内,前三天进行打渔活动,后两天进行晒网活动。程序的核心在于能够正确识别用户输入的日期,并依据此规则输出当天渔夫应进行的活动。 ### 2. 日期验证与处理 #### 2.1 ...

    java 日期函数

    根据给定的文件信息,以下是对“Java日期函数”这一主题的详细解析,涵盖了从获取当前日期时间到日期格式化、解析以及日期间隔计算等关键知识点。 ### 1. 获取当前日期时间 在JSP页面中,我们可以通过`java.util....

Global site tag (gtag.js) - Google Analytics