Java 日期操作類 【Calendar】

package com.yao.util.date;

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

public class DateUtil {

public static String defaultSimpleFormater = "yyyy-MM-dd hh:mm:ss";

/**
* 默認簡單日期字符串

* @return
*/
public static String getDefaultSimpleFormater() {
   return defaultSimpleFormater;
}

/**
* 設置默認簡單日期格式字符串

* @param defaultFormatString
*/
public static void setDefaultSimpleFormater(String defaultFormatString) {
   DateUtil.defaultSimpleFormater = defaultFormatString;
}

/**
* 格式化日期

* @param date
* @param formatString
* @return
*/
public static String format(Date date, String formatString) {
   SimpleDateFormat df = new SimpleDateFormat(formatString);
   return df.format(date);
}

/**
* 格式化日期(使用默認格式)

* @param date
* @return
*/
public static String format(Date date) {
   return format(date, defaultSimpleFormater);
}

/**
* 轉換成日期

* @param dateString
* @param formatString
* @return
*/
public static Date parse(String dateString, String formatString) {
   SimpleDateFormat df = new SimpleDateFormat(formatString);
   try {
    return df.parse(dateString);
   } catch (ParseException e) {
    return null;
   }
}

/**
* 轉換成日期(使用默認格式)

* @param dateString
* @return
*/
public static Date parse(String dateString) {
   return parse(dateString, defaultSimpleFormater);
}

/**
* 昨天

* @return
*/
public static Date yesterday() {
   return addDay(-1);
}

/**
* 明天

* @return
*/
public static Date tomorrow() {
   return addDay(1);
}

/**
* 現在

* @return
*/
public static Date now() {
   return new Date(System.currentTimeMillis());
}

/**
* 按日加

* @param value
* @return
*/
public static Date addDay(int value) {
   Calendar now = Calendar.getInstance();
   now.add(Calendar.DAY_OF_YEAR, value);
   return now.getTime();
}

/**
* 按日加,指定日期

* @param date
* @param value
* @return
*/
public static Date addDay(Date date, int value) {
   Calendar now = Calendar.getInstance();
   now.setTime(date);
   now.add(Calendar.DAY_OF_YEAR, value);
   return now.getTime();
}

/**
* 按月加

* @param value
* @return
*/
public static Date addMonth(int value) {
   Calendar now = Calendar.getInstance();
   now.add(Calendar.MONTH, value);
   return now.getTime();
}

/**
* 按月加,指定日期

* @param date
* @param value
* @return
*/
public static Date addMonth(Date date, int value) {
   Calendar now = Calendar.getInstance();
   now.setTime(date);
   now.add(Calendar.MONTH, value);
   return now.getTime();
}

/**
* 按年加

* @param value
* @return
*/
public static Date addYear(int value) {
   Calendar now = Calendar.getInstance();
   now.add(Calendar.YEAR, value);
   return now.getTime();
}

/**
* 按年加,指定日期

* @param date
* @param value
* @return
*/
public static Date addYear(Date date, int value) {
   Calendar now = Calendar.getInstance();
   now.setTime(date);
   now.add(Calendar.YEAR, value);
   return now.getTime();
}

/**
* 按小時加

* @param value
* @return
*/
public static Date addHour(int value) {
   Calendar now = Calendar.getInstance();
   now.add(Calendar.HOUR_OF_DAY, value);
   return now.getTime();
}

/**
* 按小時加,指定日期

* @param date
* @param value
* @return
*/
public static Date addHour(Date date, int value) {
   Calendar now = Calendar.getInstance();
   now.setTime(date);
   now.add(Calendar.HOUR_OF_DAY, value);
   return now.getTime();
}

/**
* 按分鐘加

* @param value
* @return
*/
public static Date addMinute(int value) {
   Calendar now = Calendar.getInstance();
   now.add(Calendar.MINUTE, value);
   return now.getTime();
}

/**
* 按分鐘加,指定日期

* @param date
* @param value
* @return
*/
public static Date addMinute(Date date, int value) {
   Calendar now = Calendar.getInstance();
   now.setTime(date);
   now.add(Calendar.MINUTE, value);
   return now.getTime();
}

/**
* 年份

* @return
*/
public static int year() {
   Calendar now = Calendar.getInstance();
   return now.get(Calendar.YEAR);
}

/**
* 月份

* @return
*/
public static int month() {
   Calendar now = Calendar.getInstance();
   return now.get(Calendar.MONTH);
}

/**
* 日(號)

* @return
*/
public static int day() {
   Calendar now = Calendar.getInstance();
   return now.get(Calendar.DAY_OF_MONTH);
}

/**
* 小時(點)

* @return
*/
public static int hour() {
   Calendar now = Calendar.getInstance();
   return now.get(Calendar.HOUR);
}

/**
* 分鐘

* @return
*/
public static int minute() {
   Calendar now = Calendar.getInstance();
   return now.get(Calendar.MINUTE);
}

/**
* 秒

* @return
*/
public static int second() {
   Calendar now = Calendar.getInstance();
   return now.get(Calendar.SECOND);
}

/**
* 星期幾(禮拜幾)

* @return
*/
public static int weekday() {
   Calendar now = Calendar.getInstance();
   return now.get(Calendar.DAY_OF_WEEK) - 1;
}

/**
* 是上午嗎?

* @return
*/
public static boolean isAm() {
   Calendar now = Calendar.getInstance();
   return now.get(Calendar.AM_PM) == 0;
}

/**
* 是下午嗎?

* @return
*/
public static boolean isPm() {
   Calendar now = Calendar.getInstance();
   return now.get(Calendar.AM_PM) == 1;
}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章