java针对于时间转换的DateUtils工具类
本文实例为大家分享了时间转换的DateUtils工具类,供大家参考,具体内容如下
importjava.sql.Timestamp; importjava.text.SimpleDateFormat; importjava.util.Calendar; importjava.util.Date; importjava.util.HashMap; importjava.util.Map; importnet.sf.json.JSONObject; /** *时间日期工具类 * *@authorwul *2015-12-31 */ publicclassDateUtil{ publicstaticfinalStringDATE_NORMAL_FORMAT="yyyy-MM-dd"; publicstaticfinalStringDATETIME_NORMAL_FORMAT="yyyy-MM-ddHH:mm:ss"; publicstaticfinalStringDATE_COMPACT_FORMAT="yyyyMMdd"; publicstaticfinalStringDATETIME_COMPACT_FORMAT="yyyyMMddHHmmss"; publicstaticfinalStringYM_NORMAL_FORMAT="yyyy-MM"; publicstaticfinalStringYM_COMPACT_FORMAT="yyyyMM"; /** *String转Timestamp *@paramdateStr *@return *@authorwul *2016-1-17 */ publicstaticTimestampstringToTimestamp(StringdateStr){ try{ if(dateStr.length()<=10){ dateStr+="00:00:00"; } returnTimestamp.valueOf(dateStr); }catch(Exceptione){ e.printStackTrace(); returnnull; } } /** *String转Date *@paramdateStr *@paramformat *@return *@authorwul *2016-1-17 */ publicstaticDatestringToDate(StringdateStr,Stringformat){ if(dateStr==null||"".equals(dateStr)){ returnnull; } Datedate=null; //注意format的格式要与日期String的格式相匹配 SimpleDateFormatsdf=newSimpleDateFormat(format); try{ date=sdf.parse(dateStr); }catch(Exceptione){ e.printStackTrace(); } returndate; } /** *Date转String *@paramdate *@paramformat *@return *@authorwul *2016-1-17 */ publicstaticStringdateToString(Datedate,Stringformat){ SimpleDateFormatsdf=newSimpleDateFormat(format); StringcurrentDate=sdf.format(date); returncurrentDate; } /** *Date转Timestamp *@paramdate *@return *@authorwul *2016-1-17 */ publicstaticTimestampdateToTimestamp(Datedate){ Timestampts=newTimestamp(date.getTime()); returnts; } /** *Timestamp转String *@paramts *@return *@authorwul *2016-1-17 */ publicstaticStringtimestampToString(Timestampts){ StringtsStr=null; SimpleDateFormatsdf=newSimpleDateFormat(DATETIME_NORMAL_FORMAT); try{ tsStr=sdf.format(ts); }catch(Exceptione){ e.printStackTrace(); } returntsStr; } /** *Timestamp转Date *@paramts *@return *@authorwul *2016-1-17 */ publicstaticDatetimestampToDate(Timestampts){ returnts; } /** *获得当前时间并格式化:yyyy-MM-ddHH:mm:ss *@return */ publicstaticStringgetCurrentTimeNormal(){ SimpleDateFormatsdf=newSimpleDateFormat(DATETIME_NORMAL_FORMAT); StringcurrentDate=sdf.format(newDate()); returncurrentDate; } /** *获得当前时间并格式化:yyyyMMddHHmmss *@return */ publicstaticStringgetCurrentTimeCompact(){ SimpleDateFormatsdf=newSimpleDateFormat(DATETIME_COMPACT_FORMAT); StringcurrentDate=sdf.format(newDate()); returncurrentDate; } /** *获得当前时间并格式化:yyyy-MM-dd *@return */ publicstaticStringgetCurrentDateNormal(){ SimpleDateFormatsdf=newSimpleDateFormat(DATE_NORMAL_FORMAT); StringcurrentDate=sdf.format(newDate()); returncurrentDate; } /** *获得当前时间并格式化:yyyyMMdd *@return */ publicstaticStringgetCurrentDateCompact(){ SimpleDateFormatsdf=newSimpleDateFormat(DATE_COMPACT_FORMAT); StringcurrentDate=sdf.format(newDate()); returncurrentDate; } /** *将20101202时间格式化为2010-12-02 * *@paramDateString时间格式:yyyyMMdd *@return */ publicstaticStringgetDateCompactToNormal(StringDateString){ StringBuildersb=newStringBuilder(); sb.append(DateString.substring(0,4)).append("-").append(DateString.subSequence(4,6)).append("-").append(DateString.substring(6,8)); returnsb.toString(); } /** *将20101202101423时间格式化为2010-12-0210:14:23 * *@paramDateString时间格式:yyyyMMddHHmmss *@return */ publicstaticStringgetDateTimeCompactToNormal(StringDateString){ StringBuildersb=newStringBuilder(); sb.append(DateString.substring(0,4)).append("-").append(DateString.subSequence(4,6)).append("-").append(DateString.substring(6,8)) .append("").append(DateString.substring(8,10)).append(":").append(DateString.substring(10,12)).append(":").append(DateString.substring(12)); returnsb.toString(); } /** *把界面输入的时间转为间凑的时间字符串 *将2010-12-0210:14:23时间格式化为20101202101423 *@paramdateNormalStrString *@returnString */ publicstaticStringgetCompactString(StringdateNormalStr){ StringBufferret=newStringBuffer(); try{ ret.append(dateNormalStr.substring(0,4)); ret.append(dateNormalStr.substring(5,7)); ret.append(dateNormalStr.substring(8,10)); ret.append(dateNormalStr.substring(11,13)); ret.append(dateNormalStr.substring(14,16)); ret.append(dateNormalStr.substring(17,19)); }catch(Exceptionex){ //如果字串不够长度,则返回前面的部分 } returnret.toString(); } /** *将20101202(101423)时间格式获得年份 *@paramDateString时间格式:yyyyMMdd(HHmmss) *@return */ publicstaticStringgetYear(StringDateString){ returnDateString.substring(0,4); } /** *将20101202(101423)时间格式获得月份 *@paramDateString时间格式:yyyyMMdd(HHmmss) *@return */ publicstaticStringgetMonth(StringDateString){ returnDateString.substring(4,6); } /** *将20101202时间格式获得日期 *@paramDateString时间格式:yyyyMMdd *@return */ publicstaticStringgetDayNoTime(StringDateString){ returnDateString.substring(6); } /** *获取当前日期之前的日期,按天数向前推 *@paramnumVal *@paramdateFormat *@return *@authorwul *2016-1-17 */ publicstaticStringgetBeforeDatePlusDay(intnumVal,StringdateFormat){ Calendarcalendar=Calendar.getInstance(); longcurrentTimeMillis=calendar.getTimeInMillis(); longhourInMillis=60*60*1000; longdVal=numVal*24*hourInMillis; SimpleDateFormatsdf=newSimpleDateFormat(dateFormat); StringcurrentDate=sdf.format(currentTimeMillis-dVal); returncurrentDate; } /** *获取当前日期之前的日期,按天数向前推 *@paramnumVal *@paramdateFormat *@return *@authorwul *2016-1-17 */ publicstaticStringgetAfterDatePlusDay(intnumVal,StringdateFormat){ Calendarcalendar=Calendar.getInstance(); longcurrentTimeMillis=calendar.getTimeInMillis(); longhourInMillis=60*60*1000; longdVal=numVal*24*hourInMillis; SimpleDateFormatsdf=newSimpleDateFormat(dateFormat); StringcurrentDate=sdf.format(currentTimeMillis+dVal); returncurrentDate; } /** *获取当前日期之前的日期,按小时向前推 *@paramnumVal *@paramdateFormat *@return *@authorwul *2016-1-17 */ publicstaticStringgetBeforeDatePlusHour(intnumVal,StringdateFormat){ Calendarcalendar=Calendar.getInstance(); longcurrentTimeMillis=calendar.getTimeInMillis(); longhourInMillis=60*60*1000; longdVal=numVal*hourInMillis; SimpleDateFormatsdf=newSimpleDateFormat(dateFormat); StringcurrentDate=sdf.format(currentTimeMillis-dVal); returncurrentDate; } /** *获取当前日期之前的日期,按小时向前推 *@paramnumVal *@paramdateFormat *@return *@authorwul *2016-1-17 */ publicstaticStringgetAfterDatePlusHour(intnumVal,StringdateFormat){ Calendarcalendar=Calendar.getInstance(); longcurrentTimeMillis=calendar.getTimeInMillis(); longhourInMillis=60*60*1000; longdVal=numVal*hourInMillis; SimpleDateFormatsdf=newSimpleDateFormat(dateFormat); StringcurrentDate=sdf.format(currentTimeMillis+dVal); returncurrentDate; } /** *两个日期相差天数 *@parambeginDate *@paramendDate *@return *@authorwul *2016-1-18 */ publicstaticintdaysBetween(DatebeginDate,DateendDate){ Calendarcal=Calendar.getInstance(); cal.setTime(beginDate); longtime1=cal.getTimeInMillis(); cal.setTime(endDate); longtime2=cal.getTimeInMillis(); longbetween_days=(time2-time1)/(1000*3600*24); returnInteger.parseInt(String.valueOf(between_days)); } /** *获取某月天数 *@paramyear *@parammonth *@return *@authorwul *2016-1-18 */ publicstaticintgetMonthdays(intyear,intmonth){ Calendarcal=Calendar.getInstance(); cal.set(Calendar.YEAR,year); cal.set(Calendar.MONTH,month-1); returncal.getActualMaximum(Calendar.DATE); } /** *给时间加减年份 *@paramdate *@paramplusTime *@return *@authorwul *2016-1-18 */ publicstaticDategetDatePlusYear(Datedate,intplusTime){ Calendarcal=Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.YEAR,plusTime); Dated=cal.getTime(); returnd; } /** *给时间加减月份 *@paramdate *@paramplusTime *@return *@authorwul *2016-1-18 */ publicstaticDategetDatePlusMonth(Datedate,intplusTime){ Calendarcal=Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.MONTH,plusTime); Dated=cal.getTime(); returnd; } /** *给时间加减天数 *@paramdate *@paramplusTime *@return *@authorwul *2016-1-18 */ publicstaticDategetDatePlusDay(Datedate,intplusTime){ Calendarcal=Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.DATE,plusTime); Dated=cal.getTime(); returnd; } /** *给时间加减小时 *@paramdate *@paramplusTime *@return *@authorwul *2016-1-18 */ publicstaticDategetDatePlusHour(Datedate,intplusTime){ Calendarcal=Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.HOUR,plusTime); Dated=cal.getTime(); returnd; } /** *给时间加减分钟 *@paramdate *@paramplusTime *@return *@authorwul *2016-1-18 */ publicstaticDategetDatePlusMinute(Datedate,intplusTime){ Calendarcal=Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.MINUTE,plusTime); Dated=cal.getTime(); returnd; } /** *给时间加减秒 *@paramdate *@paramplusTime *@return *@authorwul *2016-1-18 */ publicstaticDategetDatePlusSecond(Datedate,intplusTime){ Calendarcal=Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.SECOND,plusTime); Dated=cal.getTime(); returnd; } /** *返回当前年 *@return *@authorwul *2016-1-18 */ publicstaticintgetCurrentYear(){ Calendarcalendar=Calendar.getInstance(); returncalendar.get(1); } /** *返回当前月 *@return *@authorwul *2016-1-18 */ publicstaticintgetCurrentMonth(){ Calendarcalendar=Calendar.getInstance(); returncalendar.get(2)+1; } /** *返回当前天 *@return *@authorwul *2016-1-18 */ publicstaticintgetCurrentDay(){ Calendarcalendar=Calendar.getInstance(); returncalendar.get(5); } /** *返回当前小时 *@return *@authorwul *2016-1-18 */ publicstaticintgetCurrentHour(){ Calendarcalendar=Calendar.getInstance(); returncalendar.get(11); } /** *返回当前分钟 *@return *@authorwul *2016-1-18 */ publicstaticintgetCurrentMinute(){ Calendarcalendar=Calendar.getInstance(); returncalendar.get(12); } /** *返回当前秒 *@return *@authorwul *2016-1-18 */ publicstaticintgetCurrentSecond(){ Calendarcalendar=Calendar.getInstance(); returncalendar.get(13); } /** *返回当前年 *@return *@authorwul *2016-1-18 */ publicstaticintgetYear(Datedate){ Calendarcalendar=Calendar.getInstance(); calendar.setTime(date); returncalendar.get(1); } /** *返回当前月 *@return *@authorwul *2016-1-18 */ publicstaticintgetMonth(Datedate){ Calendarcalendar=Calendar.getInstance(); calendar.setTime(date); returncalendar.get(2)+1; } /** *返回当前天 *@return *@authorwul *2016-1-18 */ publicstaticintgetDay(Datedate){ Calendarcalendar=Calendar.getInstance(); calendar.setTime(date); returncalendar.get(5); } /** *返回当前小时 *@return *@authorwul *2016-1-18 */ publicstaticintgetHour(Datedate){ Calendarcalendar=Calendar.getInstance(); calendar.setTime(date); returncalendar.get(11); } /** *返回当前分钟 *@return *@authorwul *2016-1-18 */ publicstaticintgetMinute(Datedate){ Calendarcalendar=Calendar.getInstance(); calendar.setTime(date); returncalendar.get(12); } /** *返回当前秒 *@return *@authorwul *2016-1-18 */ publicstaticintgetSecond(Datedate){ Calendarcalendar=Calendar.getInstance(); calendar.setTime(date); returncalendar.get(13); } publicstaticvoidmain(String[]args){ System.out.println(DateUtil.dateToString(newjava.sql.Date(System.currentTimeMillis()),DateUtil.DATE_NORMAL_FORMAT)); Mapmap=newHashMap (); map.put("date",newDate()); Stringjson=JSONObject.fromObject(map).toString(); System.out.println(json); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。