publicclassDateUtils { publicstaticfinalStringDATE_FORMAT = "yyyy-MM-dd"; publicstaticfinalStringDATA_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss"; /** * 日期轉換爲"yyyy-MM-dd"格式字符串 * * @param Date * 須要轉換的日期 * @return String 轉換後的日期串 */ publicstaticStringdateToString(Datedate) { DateFormat df = newSimpleDateFormat(DATE_FORMAT); returndf.format(date); } /** * 日期轉換爲"yyyy-MM-dd HH:mm:ss"格式字符串 * * @param date * 須要轉換的日期 * @return 轉換後的日期串 */ publicstaticStringdateToStringAll(Datedate) { DateFormat df = newSimpleDateFormat(DATA_TIME_FORMAT); returndf.format(date); } /** * "yyyy-MM-dd"格式字符串轉換爲日期 * * @param str * 須要轉換的日期串 * @return Date 轉換後的日期 */ publicstaticDatestringToDate(StringdateStr) { DateFormat df = newSimpleDateFormat(DATE_FORMAT); try{ returndf.parse(dateStr); } catch(ParseException e) { e.printStackTrace(); } returnnull; } /** * "yyyy-MM-dd HH:mm:ss"格式的字符串轉換爲時間 * * @param str * 須要轉換的日期串 * @return Date 轉換後的日期 */ publicstaticDatestringToDateAll(StringdateStr) { DateFormat df = newSimpleDateFormat(DATA_TIME_FORMAT); try{ returndf.parse(dateStr); } catch(ParseException e) { e.printStackTrace(); } returnnull; } /** * 自定義格式的日期轉換爲字符串的方法 * * @param date * 須要轉換的日期 * @param pattern * 目標格式 * @return 字符串日期 */ publicstaticStringdateToStringOfPattern(Datedate, Stringpattern) { DateFormat df = newSimpleDateFormat(pattern); returndf.format(date); } /** * 自定義格式的字符串轉換爲日期的方法 * * @param dateStr * 須要轉換的日期串 * @param parrern * 轉換格式 * @return 轉換後的日期 */ publicstaticDatestringToDateOfPattern(StringdateStr, Stringparrern) { DateFormat df = newSimpleDateFormat(parrern); try{ returndf.parse(dateStr); } catch(ParseException e) { e.printStackTrace(); } returnnull; } /** * 獲取入參日期的年份 * */ publicstaticintgetYear(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); returncd.get(Calendar.YEAR); } /** * 獲取入參日期的月份,從0開始計 * */ publicstaticintgetMonth(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); returncd.get(Calendar.MONTH); } /** * 獲取入參日期的日值 * */ publicstaticintgetDay(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); returncd.get(Calendar.DATE); } /** * 獲取入參日期中小時的24小時制小時數 * */ publicstaticintgetHourOfDay(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); returncd.get(Calendar.HOUR_OF_DAY); } /** * 獲取入參日期中小時的12小時制小時數 * */ publicstaticintgetHour(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); returncd.get(Calendar.HOUR); } /** * 獲取入參日期在當前月中屬於多少周 * */ publicstaticintgetWeekOfMonth(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); returncd.get(Calendar.WEEK_OF_MONTH); } /** * 獲取入參日期在當前週中屬於第幾天,從上一週的星期天開始計 * */ publicstaticintgetDayOfWeek(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); returncd.get(Calendar.DAY_OF_WEEK); } /** * 獲取入參日期所在的周爲當前年的多少周 * */ publicstaticintgetWeekOfYear(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); returncd.get(Calendar.WEEK_OF_YEAR); } /** * 獲取入參日期在當前年中屬於第幾天 * */ publicstaticintgetDayOfYear(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); returncd.get(Calendar.DAY_OF_YEAR); } /** * 返回指定日期的本週第一天日期 * */ publicstaticDategetFirstDateOfWeek(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); cd.set(Calendar.DAY_OF_WEEK, 1); returncd.getTime(); } /** * 返回指定日期的本月第一天日期 * */ publicstaticDategetFirstDateOfMonth(Datedate) { Calendar cd = newGregorianCalendar(); cd.setTime(date); cd.set(Calendar.DAY_OF_MONTH, 1); returncd.getTime(); } /** * 返回當前時間的上下午的判斷值 * * @return 0爲上午,1爲下午 */ publicstaticintgetAMorPM() { Calendar cd = newGregorianCalendar(); returncd.get(GregorianCalendar.AM_PM); } publicstaticTimestamp dateToTimestamp(Datedate) { returnnewTimestamp(date.getTime()); } publicstaticvoidmain(String[] args) { System.out.println(DateUtils.getAMorPM()); }