常用時間轉換類
阿新 • • 發佈:2018-11-14
public class TimeHelper { public static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public static GregorianCalendar gc =new GregorianCalendar(); /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println(sdf.format(dateAddDay(new Date(),1))); } /** * 返回:以date為基本時間,延長dayNum個天 */ public static Date dateAddDay(Date date,int dayNum) { gc.setTime(date); gc.add((GregorianCalendar.DATE), dayNum); return gc.getTime(); } /** * 返回:以date為基本時間,延長monthNum個月 */ public static Date dateAddmonth(Date date,int monthNum) { gc.setTime(date); gc.add(2,+monthNum); return gc.getTime(); } /** * 返回:以date為基本時間,延長yearNum個年 */ public static Date dateAddyear(Date date,int yearNum) { gc.setTime(date); gc.add((GregorianCalendar.YEAR), yearNum); return gc.getTime(); } /* * 返回:固定過期時間時間 * */ public static Date getDeadLine(){ try { return sdf.parse("2116-12-31 00:00:00"); } catch (ParseException e) { e.printStackTrace(); } return null; } /** * 獲取time2-time1的時間差,單位為分鐘 * @param time1 * @param time2 */ public static int getMinuteTime2SubtractTime1(Date time1, Date time2){ long time2MS = time2.getTime(); long time1MS = time1.getTime(); return (int) ((time2MS-time1MS)/1000/60); } /** * 獲取time2-time1的時間差,單位為小時 * @param time1 * @param time2 */ public static int getHourTime2SubtractTime1(Date time1, Date time2){ return (int) (getMinuteTime2SubtractTime1(time1,time2)/60); } /** * 獲取time2-time1的時間差,單位為日 * @param time1 * @param time2 */ public static int getDayTime2SubtractTime1(Date time1, Date time2){ return (int) (getHourTime2SubtractTime1(time1,time2)/24); } /** * 獲取time2-time1的時間差,單位為月 * @param time1 * @param time2 */ public static int getMonthTime2SubtractTime1(Date time1, Date time2) { Calendar c1 = Calendar.getInstance(); Calendar c2 = Calendar.getInstance(); c1.setTime(time1); c2.setTime(time2); int result = 0; result = (c2.get(Calendar.YEAR) - c1.get(Calendar.YEAR))*12 + c2.get(Calendar.MONTH) - c1.get(Calendar.MONTH); return result; } }