java 日期時間處理類

uyu 9年前發布 | 2K 次閱讀 Java

import java.util.Calendar;
import java.sql.Date;
import java.text.SimpleDateFormat;
import java.text.ParseException;

/**

  • Utility to date time
  • @version 0.1
  • @author Super Zhao */ public class DateTimeUtil {

    /**

    • 由java.util.Date到java.sql.Date的類型轉換
    • @param date
    • @return Date */ public static Date getSqlDate (java.util.Date date) { return new Date (date.getTime() ); }

      public static Date nowDate() { Calendar calendar = Calendar.getInstance(); return getSqlDate (calendar.getTime() ); }

      /**

    • 獲得某一日期的后一天
    • @param date
    • @return Date */ public static Date getNextDate (Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime (date); int day = calendar.get (Calendar.DATE); calendar.set (Calendar.DATE, day + 1); return getSqlDate (calendar.getTime() ); }

      /**

    • 獲得某一日期的前一天
    • @param date
    • @return Date */ public static Date getPreviousDate (Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime (date); int day = calendar.get (Calendar.DATE); calendar.set (Calendar.DATE, day - 1); return getSqlDate (calendar.getTime() ); }

      /**

    • 獲得某年某月第一天的日期
    • @param year
    • @param month
    • @return Date */ public static Date getFirstDayOfMonth (int year, int month) { Calendar calendar = Calendar.getInstance(); calendar.set (Calendar.YEAR, year); calendar.set (Calendar.MONTH, month - 1); calendar.set (Calendar.DATE, 1); return getSqlDate (calendar.getTime() ); }

      /**

    • 獲得某年某月最后一天的日期
    • @param year
    • @param month
    • @return Date */ public static Date getLastDayOfMonth (int year, int month) { Calendar calendar = Calendar.getInstance(); calendar.set (Calendar.YEAR, year); calendar.set (Calendar.MONTH, month); calendar.set (Calendar.DATE, 1); return getPreviousDate (getSqlDate (calendar.getTime() ) ); }

      /**

    • 由年月日構建java.sql.Date類型
    • @param year
    • @param month
    • @param date
    • @return Date */ public static Date buildDate (int year, int month, int date) { Calendar calendar = Calendar.getInstance(); calendar.set (year, month - 1, date); return getSqlDate (calendar.getTime() ); }

      /**

    • 取得某月的天數
    • @param year
    • @param month
    • @return int */ public static int getDayCountOfMonth (int year, int month) { Calendar calendar = Calendar.getInstance(); calendar.set (Calendar.YEAR, year); calendar.set (Calendar.MONTH, month); calendar.set (Calendar.DATE, 0); return calendar.get (Calendar.DATE); }

      /**

    • 獲得某年某季度的最后一天的日期
    • @param year
    • @param quarter
    • @return Date */ public static Date getLastDayOfQuarter (int year, int quarter) { int month = 0; if (quarter > 4) {

       return null;
      

      } else {

       month = quarter * 3;
      

      } return getLastDayOfMonth (year, month);

      }

      /**

    • 獲得某年某季度的第一天的日期
    • @param year
    • @param quarter
    • @return Date */ public static Date getFirstDayOfQuarter (int year, int quarter) { int month = 0; if (quarter > 4) {

       return null;
      

      } else {

       month = (quarter - 1) * 3 + 1;
      

      } return getFirstDayOfMonth (year, month); }

      /**

    • 獲得某年的第一天的日期
    • @param year
    • @return Date */ public static Date getFirstDayOfYear (int year) { return getFirstDayOfMonth (year, 1); }

      /**

    • 獲得某年的最后一天的日期
    • @param year
    • @return Date */ public static Date getLastDayOfYear (int year) { return getLastDayOfMonth (year, 12); }

      /**

    • String到java.sql.Date的類型轉換
    • @param param
    • @return Date */ public static java.sql.Date StringToDate (String param) { if (StringUtil.nullOrBlank (param) ) {
       return null;
      
      } else {
       java.util.Date date = null;
       try
       {
           SimpleDateFormat sdf = new SimpleDateFormat ("yyyy-MM-dd");
           date = sdf.parse (param);
           return new Date (date.getTime() );
       }
       catch (ParseException ex)
       {
           //ex.printStackTrace();
           return null;
       }
      
      } } } </pre>
 本文由用戶 uyu 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!