예제 #1
0
  /**
   * 開始月から終了月まで日数を算出する
   *
   * @param startYmd 開始日(YYYYMMDD)
   * @param endYmd 終了日(YYYYMMDD)
   * @return 日数
   */
  public static int calcDayDistance(String startYmd, String endYmd) {

    return (int)
        Math.abs(
            (DateUtil.toDate(endYmd, DATE_PATTERN_0).getTime()
                    - DateUtil.toDate(startYmd, DATE_PATTERN_0).getTime())
                / (1000 * 60 * 60 * 24));
  }
예제 #2
0
  /**
   * 指定日付の指定月数後の日付を取得する
   *
   * @param date 指定日付(YYYYMMDD/ YYYYMM)
   * @param months 指定月
   * @return 指定日付の指定月数後の日付
   */
  public static String addMonth(final String date, final int months) {

    if (StringUtil.isEmpty(date)) {
      return null;
    }
    // フォーマットデータ取得
    String fromatDate = "";
    if (date.length() == 6) {
      fromatDate = date + "0";
    } else {
      fromatDate = date;
    }
    // 指定日付の指定月数後の日付を取得する
    Date retDate = addMonth(DateUtil.toDate(fromatDate, DATE_PATTERN_0), months);
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(retDate);
    int month = calendar.get(Calendar.MONTH) + 1;

    String year = String.valueOf(calendar.get(Calendar.YEAR));
    int day = calendar.get(Calendar.DATE);

    // 戻り値作成
    String yearMonth = year + (month > 9 ? String.valueOf(month) : String.valueOf("0" + month));
    if (date.length() == 6) {
      return yearMonth;
    } else {
      return yearMonth + (day > 9 ? String.valueOf(day) : String.valueOf("0" + day));
    }
  }
예제 #3
0
  /**
   * 指定されたフォーマットによって、システム日付演算機能
   *
   * @param date 指定日付
   * @param days 追加される日付
   * @param pattern パターン
   * @return String 日付
   */
  public static String addDays(String date, int days, String pattern) {

    Calendar calendar = Calendar.getInstance();
    calendar.setTime(DateUtil.toDate(date, pattern));
    calendar.add(Calendar.DATE, days);
    return toString(calendar.getTime(), pattern);
  }
예제 #4
0
  /**
   * 指定された日付によって、システム日付演算機能(yyyyMMdd)
   *
   * @param date 指定日付
   * @param days 追加される日付
   * @return String 日付
   */
  public static String addDays(String date, int days) {

    Calendar calendar = Calendar.getInstance();
    calendar.setTime(DateUtil.toDate(date, DATE_PATTERN_0));
    calendar.add(Calendar.DATE, days);
    return toString(calendar.getTime(), DATE_PATTERN_0);
  }
예제 #5
0
  /**
   * 年取得 yyyy
   *
   * @param date 日付(yyyymmdd)
   * @return 年
   */
  public static String getYear(String date) {

    if (StringUtil.isEmpty(date)) {
      return "";
    }
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(DateUtil.toDate(date, DATE_PATTERN_0));

    return String.valueOf(calendar.get(Calendar.YEAR));
  }
예제 #6
0
  /**
   * 月取得 MM (01,02,03......10,11,12)
   *
   * @param date 日付
   * @param pattern パターン
   * @return 月
   */
  public static String getMonth(String date, String pattern) {

    if (StringUtil.isEmpty(date)) {
      return "";
    }

    Calendar calendar = Calendar.getInstance();
    calendar.setTime(DateUtil.toDate(date, pattern));
    int month = calendar.get(Calendar.MONTH) + 1;

    return month > 9 ? String.valueOf(month) : String.valueOf("0" + month);
  }
예제 #7
0
  /**
   * 日付時刻形式チェック(YYMMDDHHMMSS)
   *
   * @param dateStr 日付時刻文字列
   * @return フォーマット可否
   */
  public static boolean checkYYMMDDHHMMSS(String dateStr) {

    String yyMMdd = dateStr.substring(0, 6);
    String hhmmss = dateStr.substring(6, 12);

    String yyyyMMdd = DateUtil.covertDateToOtherPattern(yyMMdd, DATE_PATTERN_7, DATE_PATTERN_0);
    if (!isDate(yyyyMMdd)) {
      return false;
    }

    if (!isTime(hhmmss)) {
      return false;
    }

    return true;
  }
예제 #8
0
  /**
   * 年月取得 YYYYMM
   *
   * @param date 日付(yyyymmdd)
   * @return 月
   */
  public static String getYearMonth(String date) {

    if (StringUtil.isEmpty(date)) {
      return "";
    }
    String fromatDate = "";
    if (date.length() == 6) {
      fromatDate = date + "0";
    } else {
      fromatDate = date;
    }

    Calendar calendar = Calendar.getInstance();
    calendar.setTime(DateUtil.toDate(fromatDate, DATE_PATTERN_0));
    int month = calendar.get(Calendar.MONTH) + 1;

    // 年月取得 YYYYMM
    String year = getYear(fromatDate);
    String yearMonth = year + (month > 9 ? String.valueOf(month) : String.valueOf("0" + month));
    return yearMonth;
  }