|
@@ -0,0 +1,205 @@
|
|
|
+package com.yaoxiang.planning.utils;
|
|
|
+
|
|
|
+import java.text.ParseException;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.Calendar;
|
|
|
+import java.util.Date;
|
|
|
+
|
|
|
+
|
|
|
+ * Created by Feick on 2017/12/06.
|
|
|
+ */
|
|
|
+public class DateUtil {
|
|
|
+
|
|
|
+ public static final String DATE_TIME = "yyyy-MM-dd HH:mm:ss";
|
|
|
+ public static final String DATE = "yyyy-MM-dd";
|
|
|
+
|
|
|
+ private static final SimpleDateFormat format = new SimpleDateFormat();
|
|
|
+
|
|
|
+ public static String dateTime() {
|
|
|
+ return format(new Date());
|
|
|
+ }
|
|
|
+
|
|
|
+ public static String date() {
|
|
|
+ return format(new Date(), DATE);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static String format(long time) {
|
|
|
+ return format(new Date(time));
|
|
|
+ }
|
|
|
+
|
|
|
+ public static String format(Date date) {
|
|
|
+ return format(date, DATE_TIME);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static String format(Date date, String pattern) {
|
|
|
+ format.applyPattern(pattern);
|
|
|
+ return format.format(date);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static int getYear(boolean simple) {
|
|
|
+ Date date = new Date();
|
|
|
+ String pattern = simple ? "yy" : "yyyy";
|
|
|
+ format.applyPattern(pattern);
|
|
|
+ String year = format.format(date);
|
|
|
+ return Integer.parseInt(year);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static int getMonth() {
|
|
|
+ Date date = new Date();
|
|
|
+ String pattern = "MM";
|
|
|
+ format.applyPattern(pattern);
|
|
|
+ String month = format.format(date);
|
|
|
+ return Integer.parseInt(month);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static int getDay() {
|
|
|
+ Date date = new Date();
|
|
|
+ String pattern = "dd";
|
|
|
+ format.applyPattern(pattern);
|
|
|
+ String month = format.format(date);
|
|
|
+ return Integer.parseInt(month);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date add(Date date, int day) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ calendar.add(Calendar.DATE, day);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date parse(String str) {
|
|
|
+ return parse(str, DATE_TIME);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date parse(String str, String pattern) {
|
|
|
+ format.applyPattern(pattern);
|
|
|
+ try {
|
|
|
+ return format.parse(str);
|
|
|
+ } catch (ParseException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date getFirstDayOfNextMonth(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ calendar.set(Calendar.DAY_OF_MONTH, 1);
|
|
|
+ calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
|
+ calendar.set(Calendar.MINUTE, 0);
|
|
|
+ calendar.set(Calendar.SECOND, 0);
|
|
|
+ calendar.add(Calendar.MONTH, 1);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date getFirstDayOfMonth(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
|
+ calendar.set(Calendar.MINUTE, 0);
|
|
|
+ calendar.set(Calendar.SECOND, 0);
|
|
|
+ calendar.set(Calendar.DAY_OF_MONTH, 1);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date getFirstTimeOfDay(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
|
+ calendar.set(Calendar.MINUTE, 0);
|
|
|
+ calendar.set(Calendar.SECOND, 1);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date getLastTimeOfDay(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ calendar.set(Calendar.HOUR_OF_DAY, 23);
|
|
|
+ calendar.set(Calendar.MINUTE, 59);
|
|
|
+ calendar.set(Calendar.SECOND, 59);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date getLastDayOfMonth(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ calendar.add(Calendar.MONTH, 1);
|
|
|
+ calendar.add(Calendar.DAY_OF_MONTH, -1);
|
|
|
+ calendar.set(Calendar.HOUR_OF_DAY, 23);
|
|
|
+ calendar.set(Calendar.MINUTE, 59);
|
|
|
+ calendar.set(Calendar.SECOND, 0);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date getFirstDayOfYear(int year) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.set(Calendar.YEAR, year);
|
|
|
+ calendar.set(Calendar.MONTH, Calendar.JANUARY);
|
|
|
+ calendar.set(Calendar.DAY_OF_MONTH, 1);
|
|
|
+ calendar.set(Calendar.HOUR, 0);
|
|
|
+ calendar.set(Calendar.MINUTE, 0);
|
|
|
+ calendar.set(Calendar.SECOND, 1);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date getLastDayOfYear(int year) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.set(Calendar.YEAR, year);
|
|
|
+ calendar.set(Calendar.MONTH, Calendar.DECEMBER);
|
|
|
+ calendar.set(Calendar.DAY_OF_MONTH, 31);
|
|
|
+ calendar.set(Calendar.HOUR, 23);
|
|
|
+ calendar.set(Calendar.MINUTE, 59);
|
|
|
+ calendar.set(Calendar.SECOND, 59);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date add(Date date, int filed, int amount) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ calendar.add(filed, amount);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static int getDay(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ return calendar.get(Calendar.DAY_OF_MONTH);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static int getHour(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ return calendar.get(Calendar.HOUR_OF_DAY);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static int getMinute(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ return calendar.get(Calendar.MINUTE);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date getFirstDayOfWeek(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ calendar.setFirstDayOfWeek(Calendar.SUNDAY);
|
|
|
+ int dayofweek = calendar.get(Calendar.DAY_OF_WEEK);
|
|
|
+ calendar.add(Calendar.DATE, 1 - dayofweek);
|
|
|
+ calendar.set(Calendar.HOUR_OF_DAY, 0);
|
|
|
+ calendar.set(Calendar.MINUTE, 0);
|
|
|
+ calendar.set(Calendar.SECOND, 1);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Date getLastDayOfWeek(Date date) {
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
+ calendar.setTime(date);
|
|
|
+ calendar.setFirstDayOfWeek(Calendar.SUNDAY);
|
|
|
+ int dayofweek = calendar.get(Calendar.DAY_OF_WEEK);
|
|
|
+ calendar.add(Calendar.DATE, 7 - dayofweek);
|
|
|
+ calendar.set(Calendar.HOUR_OF_DAY, 23);
|
|
|
+ calendar.set(Calendar.MINUTE, 59);
|
|
|
+ calendar.set(Calendar.SECOND, 59);
|
|
|
+ return calendar.getTime();
|
|
|
+ }
|
|
|
+}
|
|
|
+
|