1. 程式人生 > >java處理日期時間 相加減

java處理日期時間 相加減

JAVA處理日期時間常用方法:

1.java.util.Calendar
Calendar 類是一個抽象類,它為特定瞬間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日曆欄位之間的轉換提供了一些方法,併為操作日曆欄位(例如獲得下星期的日期)提供了一些方法。瞬間可用毫秒值來表示,它是距曆元(即格林威治標準時間 1970 年 1 月 1 日的 00:00:00.000,格里高利曆)的偏移量。

Calendar cal = Calendar.getInstance();//使用預設時區和語言環境獲得一個日曆。 cal.add(Calendar.DAY_OF_MONTH, -1);//取當前日期的前一天. cal.add(Calendar.DAY_OF_MONTH, +1);//取當前日期的後一天. //通過格式化輸出日期 java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd"); System.out.println("Today is:"+format.format(Calendar.getInstance().getTime())); System.out.println("yesterday is:"+format.format(cal.getTime()));

得到2007-12-25日期:

Calendar calendar = new GregorianCalendar(2007, 11, 25,0,0,0); Date date = calendar.getTime(); System.out.println("2007 Christmas is:"+format.format(date));

java月份是從0-11,月份設定時要減1.

GregorianCalendar構造方法引數依次為:年,月-1,日,時,分,秒.

取日期的部分:

int year =calendar.get(Calendar.YEAR); int month=calendar.get(Calendar.MONTH)+1; int day =calendar.get(Calendar.DAY_OF_MONTH); int hour =calendar.get(Calendar.HOUR_OF_DAY); int minute =calendar.get(Calendar.MINUTE); int seconds =calendar.get(Calendar.SECOND);

取月份要加1.

判斷當前月份的最大天數:
Calendar cal = Calendar.getInstance(); int day=cal.getActualMaximum(Calendar.DAY_OF_MONTH); System.out.println(day);

2.java.util.Date

java.util.Date today=new java.util.Date(); System.out.println("Today is "+formats.format(today));

取當月的第一天:

java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-01"); java.util.Date firstDay=new java.util.Date(); System.out.println("the month first day is "+formats.format(firstDay));

取當月的最後一天:

Calendar cal = Calendar.getInstance(); int maxDay=cals.getActualMaximum(Calendar.DAY_OF_MONTH); java.text.Format formatter3=new java.text.SimpleDateFormat("yyyy-MM-"+maxDay); System.out.println(formatter3.format(cal.getTime()));

求兩個日期之間相隔的天數:

 java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd"); java.util.Date beginDate= format.parse("2007-12-24"); java.util.Date endDate= format.parse("2007-12-25"); long day=(date.getTime()-mydate.getTime())/(24*60*60*1000); System.out.println("相隔的天數="+day);

一年前的日期:

java.text.Format formatter=new java.text.SimpleDateFormat("yyyy-MM-dd"); java.util.Date todayDate=new java.util.Date(); long beforeTime=(todayDate.getTime()/1000)-60*60*24*365; todayDate.setTime(beforeTime*1000); String beforeDate=formatter.format(todayDate); System.out.println(beforeDate);

一年後的日期:

java.text.Format formatter=new java.text.SimpleDateFormat("yyyy-MM-dd"); java.util.Date todayDate=new java.util.Date(); long afterTime=(todayDate.getTime()/1000)+60*60*24*365; todayDate.setTime(afterTime*1000); String afterDate=formatter.format(todayDate); System.out.println(afterDate);

求10小時後的時間

java.util.Calendar Cal=java.util.Calendar.getInstance(); Cal.setTime(dateOper); Cal.add(java.util.Calendar.HOUR_OF_DAY,10); System.out.println("date:"+forma.format(Cal.getTime()));

求10小時前的時間

java.util.Calendar Cal=java.util.Calendar.getInstance(); Cal.setTime(dateOper); Cal.add(java.util.Calendar.HOUR_OF_DAY,-10); System.out.println("date:"+forma.format(Cal.getTime()));

3.java.sql.Date
繼承自java.util.Date,是操作資料庫用的日期型別

java.sql.Date sqlDate = new java.sql.Date(java.sql.Date.valueOf("2007-12-25").getTime());

日期比較:簡單的比較可以以字串的形式直接比較,也可使用
java.sql.Date.valueOf("2007-03-08").compareTo(java.sql.Date.valueOf("2007-03-18"))方式來比較日期的大小.也可使用java.util.Date.after(java.util.Date)來比較.

相差時間:
long difference=c2.getTimeInMillis()-c1.getTimeInMillis();
相差天數:long day=difference/(3600*24*1000)
相差小時:long hour=difference/(3600*1000)
相差分鐘:long minute=difference/(60*1000)
相差秒: long second=difference/1000

DateFormat df=new SimpleDateFormat("yyyy-MM-dd EE hh:mm:ss"); System.out.println(df.format(new Date())); Date date = new Date(); DateFormat shortDate=DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT); DateFormat mediumDate =DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM); DateFormat longDate =DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG); DateFormat fullDate =DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL); system.out.println(shortDate.format(date)); System.out.println(mediumDate.format(date)); System.out.println(longDate.format(date)); System.out.println(fullDate.format(date)); 08-4-15 下午3:24 2008-4-15 15:24:31 2008年4月15日 下午03時24分31秒 2008年4月15日 星期二 下午03時24分31秒CST Calendar c = Calendar.getInstance(); c.add(Calendar.MONTH, 1); // 目前時間加1個月 System.out.println(df.format(c.getTime())); c.add(Calendar.HOUR, 3); // 目前時間加3小時 System.out.println(df.format(c.getTime())); c.add(Calendar.YEAR, -2); // 目前時間減2年 System.out.println(df.format(c.getTime())); c.add(Calendar.DAY_OF_WEEK, 7); // 目前的時間加7天 System.out.println(df.format(c.getTime()));

相關推薦

java處理日期時間 相加

JAVA處理日期時間常用方法: 1.java.util.Calendar Calendar 類是一個抽象類,它為特定瞬間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日曆欄位之間的轉換提供了一些方法,併為操作日曆欄位(例如獲得下星期的日期)提供了一些方法。瞬間可用毫秒

JAVA處理日期時間相加

求10小時後的時間   view plaincopy to clipboardprint?   1.java.util.Calendar Cal=java.util.Calendar.getInstance();   2.Cal.setTime(dateOper);   3

【Util】java處理日期時間 相加大全

1.java.util.Calendar Calendar 類是一個抽象類,它為特定瞬間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日曆欄位之間的轉換提供了一些方法,併為操作日曆欄位(例如獲得下星期的日期)提供了一些方法。瞬間可用毫秒值來表示,

java處理日期時間 相加大全

java處理日期時間 相加減 JAVA處理日期時間常用方法: 1.java.util.Calendar Calendar 類是一個抽象類,它為特定瞬間與一組諸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日曆欄位之間的轉換提供了一些方法,併為操作日曆

java日期時間處理

1.  /*       * 將時間轉換為時間戳       */        public static String dateToStamp(String

Java 處理日期年、月、日、周加運算

1.java 日期加減運算 GregorianCalendar gc = new GregorianCalendar(); //java中對日期的加減操作 gc.add(1,-1);//表示年份減一. gc.add(2,-1);//表示月份減一. gc.add(3,-1);//表示周減一

JAVA日期時間

1.獲取當前系統時間     Date date = new Date(); 2.實現時間的加減的兩種方法 第一種:  用java.text.SimpleDateFormat來實現    SimpleDateFormat df=new SimpleDateFormat(

兩個日期時間怎麼處理

public class Test { public Test() { } public long fromDateStringToLong(String inVal) { //此方法計算時間毫秒 Date date = null; //定

java實現時間相加

程式碼 import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** *

java時間相加

 Calendar onTime = Calendar.getInstance();  Date perDate = (Date) onTime.getTime();   onTime.add(Cal

JsonConfig處理日期時間

format style nconf ~~ this vat json數據 rom 日期時間 寫在前面:   頁面發送ajax請求到後臺,後臺返回對應的json格式數據給前臺頁面進行數據展示,如果json數據中含有日期時間,就需要對日期進行處理   下面是相關的代碼部分

JAVA —— 比較日期時間大小

使用場景:根據日期查詢記錄(如日誌類表)時,為避免日期時間超出範圍或超出當前最新時間出現報錯,需要通過比較日期時間來做條件判斷。 一、比較 年 月 日 import java.text.ParseException; import java.text.SimpleDateFormat;

Java 8 日期時間API

Java 8一個新增的重要特性就是引入了新的時間和日期API,它們被包含在java.time包中。藉助新的時間和日期API可以以更簡潔的方法處理時間和日期; 在介紹本篇文章內容之前,我們先來討論Java 8為什麼要引入新的日期API,與之前的時間和日期處理方式有什麼不同? 在Java 8之前,所

java日期時間的整理

目錄 1、Date類 2、Calendar類  常用的一些方法: 1>判斷是否是閏年:能被4整除且不能被100整除,或能被400整除為閏年 2> 獲得今年有多少天 3>判斷今天是星期幾 4>獲取當前 年/月/周/日 5>

JAVA——有關日期時間的各種類

在java中有很多有關日期時間操作的類,這些類之間有什麼關係和區別呢?首先,來了解一下它們之間的繼承結構。 一、java.util.Date 構造方法 public Date()//當前時間 public Date(long date)//引數date是自 1970

JAVA —— 比較日期時間大小

使用場景:根據日期查詢記錄(如日誌類表)時,為避免日期時間超出範圍或超出當前最新時間出現報錯,需要通過比較日期時間來做條件判斷。 一、比較 年 月 日 import java.text.ParseE

Swift4.0處理日期時間

時間的處理,在開發中經常遇見的到,我們洗完處理成年月日時分秒 這裡我寫了一個Date的分類用於處理時間 //使用非常的的方便,只需要傳入時間幾個轉換 //只需傳入型如下面的時間樣式就行 le

Java處理GMT時間和UTC時間

時間標準簡介 UTC(世界標準時間) 協調世界時,又稱世界標準時間或世界協調時間,簡稱UTC(從英文“Coordinated Universal Time”/法文“Temps Universel Coordonné”而來),是最主要的世界時間標準

Java 計算日期加、一天

public static void main(String[] args) throws ParseException { SimpleDateFormat

Java日期時間格式與毫秒數的相互轉換

1、輸入日期,轉化為毫秒數: 用calendar方法(calendar.getTime) 程式碼: public static void main(String[] args) { Cale