失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 时间工具类(时间戳转换日期date 获取两个时间戳的日期)

时间工具类(时间戳转换日期date 获取两个时间戳的日期)

时间:2024-08-08 10:40:50

相关推荐

时间工具类(时间戳转换日期date 获取两个时间戳的日期)

public class MyDateUtil {/*** 将指定的日期字符串转换成日期* @param dateStr 日期字符串* @param pattern 格式* @return 日期对象*/public static Date parseDate(String dateStr, String pattern){SimpleDateFormat sdf = new SimpleDateFormat(pattern);Date date;try {date = sdf.parse(dateStr);} catch (ParseException e) {throw new RuntimeException("日期转化错误");}return date;}/*** 将指定的日期格式化成指定的日期字符串* @param date 日期对象* @param pattern 格式* @return 格式化后的日期字符串*/public static String dateFormate(Date date, String pattern){SimpleDateFormat sdf = new SimpleDateFormat(pattern);String dateStr;if(date == null){return "";}dateStr = sdf.format(date);return dateStr;}/*** 将指定的字符串日期格式化成指定的日期字符串* @param dateStr 日期字符串对象* @param pattern 格式* @return 格式化后的日期字符串*/public static String dateStringToDateString(String dateStr, String pattern) {Date firstDate = MyDateUtil.parseDate(dateStr, pattern);String startTime = MyDateUtil.dateFormate(firstDate, pattern);return startTime;}public static ArrayList<String> handleDays(String startDate, String endDate){ArrayList<String> datelist = new ArrayList<>();endDate = endDate + " 00:00:00";Date date = MyDateUtil.parseDate(endDate, "yyyy-MM-dd HH:mm:ss");//用到上面的方法,这里的是通过BetweenDays方法获取输入的两个日期来获取日期之间相差的天数//这个可以根据自己需要来写,比如想获取一周的就直接写int days =7;int days = BetweenDays(startDate,endDate);Calendar calendar = Calendar.getInstance();for(int i=0;i<=days;i++) {//这里的date是我输入的两个时间间隔的结束时间;如果你想获取当前时间的前一周的话,你就可以把date换成Date date = new Date();calendar.setTime(date);calendar.add(Calendar.DATE, -i);Date d = calendar.getTime();String day = MyDateUtil.dateFormate(d, "yyyy-MM-dd HH:mm:ss").substring(0,10);datelist.add(day);}return datelist;}public static int BetweenDays(String startDate,String endDate){startDate = startDate + " 00:00:00";endDate = endDate + " 00:00:00";// 获取日期Date date1 = MyDateUtil.parseDate(startDate, "yyyy-MM-dd HH:mm:ss");Date date2 = MyDateUtil.parseDate(endDate, "yyyy-MM-dd HH:mm:ss");// 获取相差的天数Calendar calendar = Calendar.getInstance();calendar.setTime(date1);long timeInMillis1 = calendar.getTimeInMillis();calendar.setTime(date2);long timeInMillis2 = calendar.getTimeInMillis();long betweenDays = (timeInMillis2 - timeInMillis1) / (1000L*3600L*24L);return (int) betweenDays;}

如果觉得《时间工具类(时间戳转换日期date 获取两个时间戳的日期)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。