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()); }