import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 时间控件 公用方法 * @author rain * */ public class TimeFormat { /** * yyyy-MM-dd */ public static final SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); /** * yyyy-MM-dd HH:mm:ss */ public static final SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); /** * yyyy-MM-dd HH:mm */ public static final SimpleDateFormat format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); /** * yyyy年MM月dd日 */ public static final SimpleDateFormat format3 = new SimpleDateFormat("yyyy年MM月dd日"); /** * yyyy年MM月dd日 HH时mm分 */ public static final SimpleDateFormat format4 = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分"); /** * * @Title: currentTime * @Description: 获取当前时间 yyyy-MM-dd HH:mm:ss * @return String 返回类型 * */ public static String currentTime(){ String str=""; Date date = new Date(); try { str = format1.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd):"+str); str=""; e.printStackTrace(); } return str; } public static Date currentDate(){ String dateStr = format1.format(new Date()); return toDate(dateStr); } /** * 获取年份 * @param date * @return 返回 year eg:2013 */ @SuppressWarnings("deprecation") public static int getyears(Date date){ return date.getYear()+1900; } /** * 获取当月的第几天 * @param date * @return */ @SuppressWarnings("deprecation") public static int getmonth(Date date){ return date.getMonth()+1; } /** * * 转换时间格式yyyy-MM-dd * @param time * @return */ public static String defaultTime(String time){ String str=""; if(time==null||time.trim().equals("")){ return str; } Date date = new Date(); try { date = toDate(time); if(date==null){ return str; } str = format.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd):"+time); str=""; e.printStackTrace(); } return str; } /** * * 转换时间格式yyyy-MM-dd * @param time * @return */ public static String defaultTime(Date date){ String str=""; if(date==null){ return str; } try { str = format.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd):"+date); str=""; e.printStackTrace(); } return str; } /** * * @Title: formatTime * @Description: TODO时间格式转换 * @param @param time * @param @param temp 指定的时间格式 * @param @return 设定文件 * @return String 返回类型 * @throws */ public static String formatTime(String time,String temp){ String str=""; if(time==null||time.trim().equals("")){ return str; } if(temp==null||temp.trim().equals("")){ return str; } Date date = new Date(); try { date = toDate(time); if(date==null){ return str; } SimpleDateFormat sf = new SimpleDateFormat(temp); str = sf.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd):"+time); str=""; e.printStackTrace(); } return str; } /** * * 字符串时间格式化 * @param date * @param temp 指定的时间格式 * @return */ public static String formatTime(Date date,String temp){ String str=""; if(temp==null||temp.trim().equals("")){ return str; }if(date==null){ return str; } try { SimpleDateFormat sf = new SimpleDateFormat(temp); str = sf.format(date); } catch (Exception e) { System.out.println("转换时间格式异常"); str=""; e.printStackTrace(); } return str; } /** * 字符串时间格式化 * 转换时间格式yyyy-MM-dd HH:mm:ss * @param time * @return */ public static String standardTime(String time){ String str=""; if(time==null||time.trim().equals("")){ return str; } Date date = new Date(); try { date = toDate(time); if(date==null){ return str; } str = format1.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd HH:mm:ss):"+time); str=""; e.printStackTrace(); } return str; } /** * 字符串时间格式化 * 转换时间格式yyyy-MM-dd HH:mm:ss * @param time * @return */ public static String standardTime(Date date){ String str=""; if(date==null){ return str; } try { str = format1.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd HH:mm:ss):"+date); str=""; e.printStackTrace(); } return str; } /** * 字符串时间格式化 * 转换时间格式yyyy-MM-dd HH:mm * @param time * @return */ public static String hourTime(String time){ String str=""; if(time==null||time.trim().equals("")){ return str; } Date date = new Date(); try { date = toDate(time); if(date==null){ return str; } str = format2.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd HH:mm):"+time); str=""; e.printStackTrace(); } return str; } /** * 字符串时间格式化 * 转换时间格式yyyy-MM-dd HH:mm * @param time * @return */ public static String hourTime(Date date){ String str=""; if(date==null){ return str; } try { str = format2.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd HH:mm):"+date); str=""; e.printStackTrace(); } return str; } /** * 字符串时间格式化 * 转换时间格式yyyy-MM-dd HH:mm * @param time * @return */ public static String hourTimeNull(Date date){ String str=""; if(date==null){ return null; } try { str = format2.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd HH:mm):"+date); str=""; e.printStackTrace(); } return str; } /** * 字符串时间格式化 * yyyy年MM月dd日 * @param time * @return */ public static String printTime(String time){ String str=""; if(time==null||time.trim().equals("")){ return str; } Date date = new Date(); try { date = toDate(time); if(date==null){ return str; } str = format3.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd HH:mm:ss):"+time); str=""; e.printStackTrace(); } return str; } /** * 字符串时间格式化 * yyyy年MM月dd日 * @param time * @return */ public static String printTime(Date date){ String str=""; if(date==null){ return str; } try { str = format3.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd HH:mm:ss):"+date); str=""; e.printStackTrace(); } return str; } /** * 字符串时间格式化 * yyyy年MM月dd日 HH时mm分 * @param time * @return */ public static String printTime1(String time){ String str=""; if(time==null||time.trim().equals("")){ return str; } Date date = new Date(); try { date = toDate(time); if(date==null){ return str; } str = format4.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd HH:mm:ss):"+time); str=""; e.printStackTrace(); } return str; } /** * 字符串时间格式化 * yyyy年MM月dd日 HH时mm分 * @param time * @return */ public static String printTime1(Date date){ String str=""; if(date==null){ return str; } try { str = format4.format(date); } catch (Exception e) { System.out.println("转换时间格式异常(yyyy-MM-dd HH:mm:ss):"+date); str=""; e.printStackTrace(); } return str; } /** * 字符串转换为时间格式。 * @param time * @return Date */ public static Date toDate(String time){ Date date=null; if(time==null||time.equals("")){ return null; } try { date = format1.parse(time); } catch (ParseException e) { try { date = format2.parse(time); } catch (ParseException e1) { try { date = format.parse(time); } catch (ParseException e2) { System.out.println("转化时间格式异常:"+time); } } }catch(Exception e){ System.out.println("转化时间格式异常:"+time); e.printStackTrace(); } return date; } /** * 当天的开始时间 * @return */ public static long startOfTodDay() { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); Date date=calendar.getTime(); return date.getTime(); } /** * 当天的结束时间 * @return */ public static long endOfTodDay() { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 23); calendar.set(Calendar.MINUTE, 59); calendar.set(Calendar.SECOND, 59); calendar.set(Calendar.MILLISECOND, 999); Date date=calendar.getTime(); return date.getTime(); } /** * 明天的开始时间 * @return */ public static long startOfTomorrowday() { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); calendar.add(Calendar.DATE, 1); calendar.set(Calendar.MILLISECOND, 0); Date date=calendar.getTime(); return date.getTime(); } /** * 昨天的开始时间 * @return */ public static long startOfyesterday() { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); calendar.add(Calendar.DATE, -1); calendar.set(Calendar.MILLISECOND, 0); Date date=calendar.getTime(); return date.getTime(); } /** * 昨天的结束时间 * @return */ public static long endOfyesterday() { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY, 23); calendar.set(Calendar.MINUTE, 59); calendar.set(Calendar.SECOND, 59); calendar.set(Calendar.MILLISECOND, 999); calendar.add(Calendar.DATE, -1); Date date=calendar.getTime(); return date.getTime(); } /** * 功能:获取上周的开始时间 */ public static long startOfLastWeek() { return startOfThisWeek() - 7 * 24 * 60 * 60 * 1000; } /** * 功能:获取上周的结束时间 */ public static long endOfLastWeek() { return endOfThisWeek() - 7 * 24 * 60 * 60 * 1000; } /** * 功能:获取本周的开始时间 示例:2013-05-13 00:00:00 */ public static long startOfThisWeek() { Calendar currentDate = Calendar.getInstance(); currentDate.setFirstDayOfWeek(Calendar.MONDAY); currentDate.set(Calendar.HOUR_OF_DAY, 0); currentDate.set(Calendar.MINUTE, 0); currentDate.set(Calendar.SECOND, 0); currentDate.set(Calendar.MILLISECOND, 0); currentDate.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); Date date=currentDate.getTime(); return date.getTime(); } /** * 功能:获取本周的结束时间 示例:2013-05-19 23:59:59 */ public static long endOfThisWeek() { Calendar currentDate = Calendar.getInstance(); currentDate.setFirstDayOfWeek(Calendar.MONDAY); currentDate.set(Calendar.HOUR_OF_DAY, 23); currentDate.set(Calendar.MINUTE, 59); currentDate.set(Calendar.SECOND, 59); currentDate.set(Calendar.MILLISECOND, 999); currentDate.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); Date date=currentDate.getTime(); return date.getTime(); } /** * 功能:获取本月的开始时间 */ public static long startOfThisMonth() { Calendar currentDate = Calendar.getInstance(); currentDate.set(Calendar.HOUR_OF_DAY, 0); currentDate.set(Calendar.MINUTE, 0); currentDate.set(Calendar.SECOND, 0); currentDate.set(Calendar.MILLISECOND, 0); currentDate.set(Calendar.DAY_OF_MONTH, 1); Date date=currentDate.getTime(); return date.getTime(); } public static long endOfThisMonth() { Calendar cal = Calendar.getInstance(); cal.set(Calendar.DAY_OF_MONTH, 1); cal.set(Calendar.HOUR_OF_DAY, 23); cal.set(Calendar.MINUTE, 59); cal.set(Calendar.SECOND, 59); cal.set(Calendar.MILLISECOND, 999); cal.add(Calendar.MONTH, 1); cal.add(Calendar.DATE, -1); Date date=cal.getTime(); return date.getTime(); } /** * 功能:获取上月的开始时间 */ public static long startOfLastMonth() { Calendar currentDate = Calendar.getInstance(); currentDate.set(Calendar.HOUR_OF_DAY, 0); currentDate.set(Calendar.MINUTE, 0); currentDate.set(Calendar.SECOND, 0); currentDate.set(Calendar.MILLISECOND, 0); currentDate.set(Calendar.DAY_OF_MONTH, 1); currentDate.add(Calendar.MONTH, -1); Date date=currentDate.getTime(); return date.getTime(); } /** * 功能:获取上月的结束时间 */ public static long endOfLastMonth() { Calendar cal = Calendar.getInstance(); cal.set(Calendar.DAY_OF_MONTH, 1); cal.set(Calendar.HOUR_OF_DAY, 23); cal.set(Calendar.MINUTE, 59); cal.set(Calendar.SECOND, 59); cal.set(Calendar.MILLISECOND, 999); cal.add(Calendar.DATE, -1); Date date=cal.getTime(); return date.getTime(); } /** * 功能:获取本年的开始时间 */ public static long startOfTheYear(int year) { Calendar currentDate = Calendar.getInstance(); currentDate.set(Calendar.YEAR, year); currentDate.set(Calendar.MONTH, 0); currentDate.set(Calendar.HOUR_OF_DAY, 0); currentDate.set(Calendar.MINUTE, 0); currentDate.set(Calendar.SECOND, 0); currentDate.set(Calendar.MILLISECOND, 0); currentDate.set(Calendar.DAY_OF_MONTH, 1); Date date=currentDate.getTime(); return date.getTime(); } /** * 功能:获取本年的开始时间 */ public static long endOfTheYear(int year) { Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, year); cal.set(Calendar.MONTH,11); cal.set(Calendar.DAY_OF_MONTH, 31); cal.set(Calendar.HOUR_OF_DAY, 23); cal.set(Calendar.MINUTE, 59); cal.set(Calendar.SECOND, 59); cal.set(Calendar.MILLISECOND, 999); Date date=cal.getTime(); return date.getTime(); } /** * 日期时间字符串转换成秒 * @param dateTime 字符串时间 * @return */ public static Long getTimeInMillis(String dateTime){ Calendar calendar = Calendar.getInstance(); try { calendar.setTime(format.parse(dateTime)); } catch (ParseException e) { System.out.println("日期时间字符串转换成秒(yyyy-MM-dd):"+dateTime); e.printStackTrace(); } return calendar.getTimeInMillis(); } }
浙公网安备 33010602011771号