时间工具类(时间戳转换日期date,获取两个时间戳的日期)
生活随笔
收集整理的這篇文章主要介紹了
时间工具类(时间戳转换日期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,获取两个时间戳的日期)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STM32F429 usart DMA
- 下一篇: 游戏签到测试点