zoukankan      html  css  js  c++  java
  • java日期格式转换大全

    public class DateFormatUtils {
    	private static Log logger = LogFactory.getLog(DateFormatUtils.class);
    	
    	public static String formatDate(String formater,Date date){
    		SimpleDateFormat formate = new SimpleDateFormat(formater);
    		formate.format(date);
    		return formate.format(date);
    	}
    	
    	/**
    	 * 
    	 * @Title:formatDateToCommon
    	 * @Description: 通用时间转换类型 
    	 * @param date
    	 * @return
    	 */
    	public static String formatDateToCommon(Date date){
    		SimpleDateFormat formate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    		return formate.format(date);
    	}
    	
    	/**
    	 * 
    	 * @Title:getSystemDate
    	 * @Description: 获取系统当前时间 
    	 * @param date
    	 * @return
    	 * @throws Exception
    	 */
    	public static Date getSystemDate() {
    		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    		try {
    			return sdf.parse(sdf.format(new Date()));
    		} catch (ParseException e) {
    			logger.error("", e);
    		}
    		return null ;
    	}
    	
    	/**
    	 * 
    	 * @Title:SystemDateFormatToCommon
    	 * @Description: 获取系统当前时间 
    	 * @return
    	 */
    	public static String getSystemDateFormatToCommon(){
    		SimpleDateFormat formate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    		return formate.format(new Date());
    	}
    	
    	public static String getSystemDateFormatToYYYYMMDD(){
    		SimpleDateFormat formate = new SimpleDateFormat("yyyyMMdd");
    		return formate.format(new Date());
    	}
    	
    	public static String getSystemDateFormatToYYYYMMDDHHmmss(){
    		SimpleDateFormat formate = new SimpleDateFormat("yyyyMMddHHmmss");
    		return formate.format(new Date());
    	}
    	
    	/**
    	 * 
    	 * @Title:getFormatDateCommon
    	 * @Description: 格式化时间 
    	 * @param date
    	 * @return
    	 * @throws Exception
    	 */
    	public static Date getFormatDateCommon(Date date) {
    		try {
    			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    			return sdf.parse(sdf.format(date));
    		} catch (ParseException e) {
    			logger.error("", e);
    		}
    		return null;
    	}
    	
    	/**
    	 * 
    	 * @Title:StringToDate
    	 * @Description: 字符串转换成日期 
    	 * @param dateStr
    	 * @param formatStr
    	 * @return
    	 * @throws ParseException 
    	 */
    	public static Date StringToDate(String dateStr) throws ParseException {
    		DateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    		Date date=null;
    		date = sdf.parse(dateStr);
    		return date;
    	}
    	
    	public static Date StringToDate(String dateStr, String pattern){
    		try{
    			DateFormat sdf=new SimpleDateFormat(pattern);
    			Date date = sdf.parse(dateStr);
    			return date;
    		}catch(ParseException ex){
    			return null;
    		}
    	}
    	
    	/**
    	 * 
    	 * @Title:fromDateStringToLong
    	 * @Description: 获取字符串时间格式的毫秒数 
    	 * @param inVal
    	 * @return
    	 */
    	public static long fromDateStringToLong(String inVal) {
    		return fromDateStringToLong(inVal, "yyyy-MM-dd HH:mm:ss");
    	}
    	public static long fromDateStringToLong(String inVal,String format) {
    		Date date = null; // 定义时间类型
    		SimpleDateFormat inputFormat = new SimpleDateFormat(format);
    		try {
    			date = inputFormat.parse(inVal); // 将字符型转换成日期型
    		} catch (Exception e) {
    			logger.error("", e);
    		}
    		return date.getTime(); // 返回毫秒数
    	}
    	
    	/**
    	 * 
    	 * @Title:getMillForDateTimeDouble
    	 * @Description: 获取两个时间之间的毫秒数 
    	 * @param inVal
    	 * @return
    	 */
    	public static long getMillForDateTimeDouble(Date startTime, Date endTime) {
    		long lTime = startTime.getTime();
    		long eTime = endTime.getTime();
    		long s = eTime - lTime ;
    		return s;
    	}
    	
    	/**
    	 * 
    	 * @Title:formatDuring
    	 * @Description: 将毫秒数转换为时分秒 
    	 * @param mss
    	 * @return
    	 */
    	public static String formatDuring(long mss) {  
    	    long days = mss / (1000 * 60 * 60 * 24);  
    	    long hours = (mss % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60);  
    	    long minutes = (mss % (1000 * 60 * 60)) / (1000 * 60);  
    	    long seconds = (mss % (1000 * 60)) / 1000;  
        	return days + " 天 " + hours + " 时 " + minutes + " 分 "  
    	            + seconds + " 秒 ";   
    	}  
    	
    	/**  
         * 计算两个日期之间相差的天数  
         * @param format yyyyMMdd
         * @param smdate 较小的时间 
         * @param bdate  较大的时间 
         * @return 相差天数 
         * @throws ParseException  
         */    
        public static int daysBetween(String format,Date smdate,Date bdate) throws ParseException    
        {    
            SimpleDateFormat sdf=new SimpleDateFormat(format);  
            smdate=sdf.parse(sdf.format(smdate));  
            bdate=sdf.parse(sdf.format(bdate));  
            Calendar cal = Calendar.getInstance();    
            cal.setTime(smdate);    
            long time1 = cal.getTimeInMillis();                 
            cal.setTime(bdate);    
            long time2 = cal.getTimeInMillis();         
            long between_days=(time2-time1)/(1000*3600*24);  
                
           return Integer.parseInt(String.valueOf(between_days));           
        }    
          
    	/**  
         * 计算两个日期之间相差的天数  
         * 字符串的日期格式的计算
         * @param format yyyyMMdd
         * @param smdate 较小的时间 
         * @param bdate  较大的时间 
         * @return 相差天数 
         * @throws ParseException  
         */
        public static int daysBetween(String format,String smdate,String bdate) throws ParseException{  
            SimpleDateFormat sdf=new SimpleDateFormat(format);  
            Calendar cal = Calendar.getInstance();    
            cal.setTime(sdf.parse(smdate));    
            long time1 = cal.getTimeInMillis();                 
            cal.setTime(sdf.parse(bdate));    
            long time2 = cal.getTimeInMillis();         
            long between_days=(time2-time1)/(1000*3600*24);  
                
           return Integer.parseInt(String.valueOf(between_days));     
        }
        
        /**
         * 
         * @Title:getSystemAddMinute
         * @Description: 获取当前系统时间毫秒数 + n分钟后的时间 
         * @param currentTimeMillis 当前系统时间毫秒数
         * @param minute 分
         * @return
         */
        public static String getSystemByCurrentTimeMillisAndMinute(long currentTimeMillis, int minute){
        	long currentTime = System.currentTimeMillis() + minute * 60 * 1000;
        	Date date = new Date(currentTime);
        	SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    		return sdf.format(date);
        }
        
        /**
         * 
         * @Title:getDateStrByTimeMillis
         * @Description: 以字符串形式根据毫秒数获取时间 
         * @param currentTimeMillis
         * @return
         */
        public static String getDateStrByTimeMillis(long currentTimeMillis){
        	Date date = new Date(currentTimeMillis); 
        	SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    		return sdf.format(date);
        }
        
        /**
         * 
         * @Title:getDateStrByTimeMillis
         * @Description: 以字符串形式根据毫秒数获取时间 
         * @param currentTimeMillis
         * @return
         */
        public static Date getDateByTimeMillis(long currentTimeMillis){
        	Date date = new Date(currentTimeMillis); 
        	return date;
        }
        
        /**** 
         * 传入具体日期 ,返回具体日期减一个月。 
         *  
         * @param date 
         *            日期(2014-04-20) 
         * @return 2014-03-20 
         * @throws ParseException 
         */  
        public static String addMonth(String yearMonth) throws ParseException {  
            SimpleDateFormat sdf = new SimpleDateFormat("yyyyMM");  
            Date dt = sdf.parse(yearMonth);  
            Calendar rightNow = Calendar.getInstance();  
            rightNow.setTime(dt);  
      
            rightNow.add(Calendar.MONTH, +1);  
            Date dt1 = rightNow.getTime();  
            String reStr = sdf.format(dt1);  
      
            return reStr;  
        }
        
        /**
         * 
         * @param dateStr   传入的日期字符串
         * @param formater  对传入日期和传出日期的格式化类型
         * @param monthCount 增加月份传入正值,减去月份传入负值
         * @return
         * @throws ParseException 
         */
        public static String calMonth(String dateStr, String formater, int monthCount) throws ParseException{
        	SimpleDateFormat sdf = new SimpleDateFormat(formater);
            Date dt = sdf.parse(dateStr);
            Calendar rightNow = Calendar.getInstance();
            rightNow.setTime(dt);
      
            rightNow.add(Calendar.MONTH, monthCount);
            Date dt1 = rightNow.getTime();
            String reStr = sdf.format(dt1);
            return reStr;
        }
    }
    
  • 相关阅读:
    爬虫必看,每日JS逆向之爱奇艺密码加密,今天你练了吗?
    每日JS逆向练习之斗鱼登录密码加密,今天你练了吗?
    兄弟们,我打算抠100个网站JS加密代码召唤,一个也跑不掉,这次轮到小虎牙
    这个爬虫JS逆向加密任务,你还不来试试?逆向入门级,适合一定爬虫基础的人
    兄弟,你爬虫基础这么好,需要研究js逆向了,一起吧(有完整JS代码)
    四十一:快速排序(递归)
    第四十次发博不知道用什么标题好
    第三十九次发博不知道发什么好
    第三十八次发博不知道用什么标题好
    第三十七次发博不知道用什么标题好
  • 原文地址:https://www.cnblogs.com/wangyayun/p/11732224.html
Copyright © 2011-2022 走看看