java日期時間處理集合


本文主要介紹java中日期時間的處理,包括獲取時間,時間相加減,格式化等操作。

持續更新中...

時間格式化

//時間格式化
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

獲取當前時間

//獲取當前時間
Date currentTime = new Date();
System.out.println(String.format("系統當前時間:%s",dateFormat.format(currentTime)));

//輸出
2019-04-11 11:07:57

 時間字符串轉日期類型

//時間字符串轉日期類型,以下時間加減均以此時間為基礎
String strTime = "2019-04-10 18:18:78";
Date fixedTime;
try{
    //特定時間字符串轉為日期類型,需要處理ParseException異常
    //注意,時間字符串格式要與dateFormat定義的一致,否則引發異常
    fixedTime = dateFormat.parse(strTime);
}
catch (ParseException ex){
    fixedTime = new Date();
    ex.printStackTrace();
}
System.out.println(String.format("字符轉換時間:%s,以下時間加減均以此時間為基礎",dateFormat.format(fixedTime)));

//輸出
字符轉換時間:2019-04-10 18:19:18,以下時間加減均以此時間為基礎

 使用Calendar來實現日期加減1小時,1天,1個月和1年

//使用Calendar來實現加減1小時,1天,1個月和1年
Calendar calendar = Calendar.getInstance();
//指定時間減1小時
calendar.setTime(fixedTime);
calendar.add(Calendar.HOUR_OF_DAY, -1);
System.out.println(String.format("1小時之前的時間:%s", dateFormat.format(calendar.getTime())));
//指定時間加1小時
calendar.setTime(fixedTime);
calendar.add(Calendar.HOUR_OF_DAY, 1);
System.out.println(String.format("1小時之后的時間:%s", dateFormat.format(calendar.getTime())));
//指定時間減1天
calendar.setTime(fixedTime);
calendar.add(Calendar.DAY_OF_YEAR, -1);
System.out.println(String.format("1天之前的時間:%s", dateFormat.format(calendar.getTime())));
//指定時間加1天
calendar.setTime(fixedTime);
calendar.add(Calendar.DAY_OF_YEAR, 1);
System.out.println(String.format("1天之后的時間:%s", dateFormat.format(calendar.getTime())));
//指定時間減1個月
calendar.setTime(fixedTime);
calendar.add(Calendar.MONTH, -1);
System.out.println(String.format("1個月之前的時間:%s", dateFormat.format(calendar.getTime())));
//指定時間加1個月
calendar.setTime(fixedTime);
calendar.add(Calendar.MONTH, 1);
System.out.println(String.format("1個月之后的時間:%s", dateFormat.format(calendar.getTime())));
//指定時間減1年
calendar.setTime(fixedTime);
calendar.add(Calendar.YEAR, -1);
System.out.println(String.format("1年之前的時間:%s", dateFormat.format(calendar.getTime())));
//指定時間加1年
calendar.setTime(fixedTime);
calendar.add(Calendar.YEAR, 1);
System.out.println(String.format("1年之后的時間:%s", dateFormat.format(calendar.getTime())));

//輸出
10分鍾之前的時間:2019-04-10 18:09:18
10分鍾之后的時間:2019-04-10 18:29:18
1小時之前的時間:2019-04-10 17:19:18
1小時之后的時間:2019-04-10 19:19:18
1天之前的時間:2019-04-09 18:19:18
1天之后的時間:2019-04-11 18:19:18
1個月之前的時間:2019-03-10 18:19:18
1個月之后的時間:2019-05-10 18:19:18
1年之前的時間:2018-04-10 18:19:18
1年之后的時間:2020-04-10 18:19:18

注意:Calendar.HOUR_OF_DAY是24小時制,Calendar.HOUR是12小時制。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM