package com.yutu.base.utils; import org.apache.commons.lang3.time.DateFormatUtils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 项目名称:polestarOtaOrder * 类名称:DateUtil * 类描述: 时间操作类 * @author wang yu * 创建时间:2017-11-01 10:27AM * @version */ public class DateUtil { /** * 生成ISO-8601 规范的时间格式 * @param date * @return */ public static String formatISO8601DateString(Date date){ String pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"; return DateFormatUtils.format(date, pattern); } /** * 获取原时间戳 * @param reverseTime * @return */ public static Long recoverReverseTime(Long reverseTime){ long longTime = Long.MAX_VALUE - reverseTime; return longTime/1000000; } /* * 获取系统当前日期及时间 * */ public static Date getCurrentTime(){ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date currentTime=null; try { currentTime= sdf.parse(sdf.format(new Date())); } catch (ParseException e) { e.printStackTrace(); } return currentTime; } /** * 生成页面普通展示时间 * @param date * @return */ public static String formatNormalDateString(Date date){ String pattern = "yyyy-MM-dd HH:mm:ss"; return DateFormatUtils.format(date, pattern); } /** * 日期转换成字符串 * @param date * @return str */ public static String DateToStr(Date date,String formatPattern) { SimpleDateFormat format = new SimpleDateFormat(formatPattern); String str = format.format(date); return str; } /** * 字符串转换成日期 * @param str * @return date */ public static Date StrToDate(String str,String formatPattern) { SimpleDateFormat format = new SimpleDateFormat(formatPattern); Date date = null; try { date = format.parse(str); } catch (ParseException e) { e.printStackTrace(); } return date; } /* * 将当前日期增加天数 * @param date 要计算的日期 * @param days 要增加的天数 * @return 计算后的新日期 * */ public static Date dayAdd(Date date,int days){ Calendar ca = Calendar.getInstance();//得到一个Calendar的实例 ca.setTime(date); //设置时间 ca.add(Calendar.DAY_OF_MONTH, days); //年份减1 date = ca.getTime(); //结果 return date; } /* * 将时间转换为时间戳 */ public static String dateToStamp(String s) throws ParseException{ String res; SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = simpleDateFormat.parse(s); long ts = date.getTime(); res = String.valueOf(ts); return res; } /* * 将时间戳转换为时间 */ public static String stampToDate(String s){ String res; SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); long lt = new Long(s); Date date = new Date(lt); res = simpleDateFormat.format(date); return res; } }