日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

日期格式化、时间差转换

發(fā)布時(shí)間:2023/12/18 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 日期格式化、时间差转换 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在項(xiàng)目中,難免會(huì)遇到日期轉(zhuǎn)換或者計(jì)算時(shí)間差的,于是就整合成了一個(gè)util,方便以后使用。以下是代碼

package com.magingunion.framework.util;import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date;public class DateUtil {/** * 將時(shí)間字符串轉(zhuǎn)換為Date類(lèi)型 * @param dateStr * @return Date */ public static Date toDate(String dateStr) { Date date = null; SimpleDateFormat formater = new SimpleDateFormat(); formater.applyPattern("yyyy-MM-dd "); try { date = formater.parse(dateStr); } catch (ParseException e) { e.printStackTrace(); } return date; } /** * 按照提供的格式將字符串轉(zhuǎn)換成Date類(lèi)型 * @param dateStr * @param formaterString * @return */ public static Date toDate(String dateStr, String formaterString) { Date date = null; SimpleDateFormat formater = new SimpleDateFormat(); formater.applyPattern(formaterString); try { date = formater.parse(dateStr); } catch (ParseException e) { e.printStackTrace(); } return date; } /** * 將Date類(lèi)型時(shí)間轉(zhuǎn)換為字符串 * @param date * @return */ public static String toString(Date date) { String time; SimpleDateFormat formater = new SimpleDateFormat(); formater.applyPattern("yyyy-MM-dd"); time = formater.format(date); return time; } /** * 按照參數(shù)提供的格式將Date類(lèi)型時(shí)間轉(zhuǎn)換為字符串 * @param date * @param formaterString * @return */ public static String toString(Date date, String formaterString) { String time; SimpleDateFormat formater = new SimpleDateFormat(); formater.applyPattern(formaterString); time = formater.format(date); return time; } /*** *功能:計(jì)算時(shí)間差 *@param startTime*@param endTime*@return*/public static String dateDiff(String startTime, String endTime) { // 按照傳入的格式生成一個(gè)simpledateformate對(duì)象 SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); long nd = 1000 * 24 * 60 * 60;// 一天的毫秒數(shù) long nh = 1000 * 60 * 60;// 一小時(shí)的毫秒數(shù) long nm = 1000 * 60;// 一分鐘的毫秒數(shù) long ns = 1000;// 一秒鐘的毫秒數(shù) long diff; long day = 0; long hour = 0; long min = 0; long sec = 0; // 獲得兩個(gè)時(shí)間的毫秒時(shí)間差異 try { diff = sd.parse(endTime).getTime() - sd.parse(startTime).getTime(); day = diff / nd;// 計(jì)算差多少天 hour = diff % nd / nh + day * 24;// 計(jì)算差多少小時(shí) min = diff % nd % nh / nm + day * 24 * 60;// 計(jì)算差多少分鐘 sec = diff % nd % nh % nm / ns;// 計(jì)算差多少秒 // 輸出結(jié)果 System.out.println("時(shí)間相差:" + day + "天" + (hour - day * 24) + "小時(shí)" + (min - day * 24 * 60) + "分鐘" + sec + "秒。"); System.out.println("hour=" + hour + ",min=" + min);} catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } if(min<=60){return min - day * 24 * 60+"分鐘";}else if(min>60 && hour<24){return (hour - day * 24) + "小時(shí)" + (min - day * 24 * 60) + "分鐘";}else {return day + "天" + (hour - day * 24) + "小時(shí)" + (min - day * 24 * 60) + "分鐘";}}/*** *功能: 小時(shí)差*@param startTime*@param endTime*@return*/public static String hourDiff(String startTime, String endTime) { // 按照傳入的格式生成一個(gè)simpledateformate對(duì)象 SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); long nd = 1000 * 24 * 60 * 60;// 一天的毫秒數(shù) long nh = 1000 * 60 * 60;// 一小時(shí)的毫秒數(shù) long nm = 1000 * 60;// 一分鐘的毫秒數(shù) long ns = 1000;// 一秒鐘的毫秒數(shù) long diff; long day = 0; long hour = 0; long min = 0; long sec = 0; // 獲得兩個(gè)時(shí)間的毫秒時(shí)間差異 try { diff = sd.parse(endTime).getTime() - sd.parse(startTime).getTime(); day = diff / nd;// 計(jì)算差多少天 hour = diff % nd / nh + day * 24;// 計(jì)算差多少小時(shí) min = diff % nd % nh / nm + day * 24 * 60;// 計(jì)算差多少分鐘 sec = diff % nd % nh % nm / ns;// 計(jì)算差多少秒 // 輸出結(jié)果 System.out.println("時(shí)間相差:" + day + "天" + (hour - day * 24) + "小時(shí)" + (min - day * 24 * 60) + "分鐘" + sec + "秒。"); System.out.println("hour=" + hour + ",min=" + min);} catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } return String.valueOf(hour);}}

在項(xiàng)目開(kāi)發(fā)中還是很實(shí)用的,在此處記下來(lái)。`

總結(jié)

以上是生活随笔為你收集整理的日期格式化、时间差转换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。