2011-08-11 63 views
0

比較的日期我用它來創建一個日期,並把它變成一個數據庫:撰寫和Java中

String currentDateTimeString = DateFormat.getDateInstance().format(new Date()); 

我想建立一個日期格式類似於上面的一個,並將其與currentDateTimeString比較。

我有3個整數。我該怎麼做(int year,int month,int day)?

UPDATE:

Calendar cal = Calendar.getInstance(); 

     cal.set(Calendar.MONTH, month); 
     cal.set(Calendar.YEAR, year); 
     cal.set(Calendar.DAY_OF_MONTH, day); 

     Date result = cal.getTime(); 
     String currentDateTimeString2 = DateFormat.getDateInstance().format(result); 

我在這裏做wrong..both的arent相等的東西: currentDateTimeString2 == currentDateTimeString //假

回答

1
Calendar cal = Calendar.getInstance(); 
cal.set(Calendar.DATE, date); 
cal.set(Calendar.MONTH, month-1);//it starts from 0 
cal.set(Calendar.YEAR, year); 
cal.set(Calendar.HOUR, 0); 
cal.set(Calendar.MINUTE, 0); 
cal.set(Calendar.SECOND, 0); 
cal.set(Calendar.MILLISECOND, 0); 
Date result = cal.getTime(); 

我在這裏做什麼wrong..both的arent等於:currentDateTimeString2 == currentDateTimeString // false

字符串是對象,它不能與==使用equals()方法

+0

看到上面的更新 –

+0

看到上面的更新 –

+0

我想指出的是,當我得到currentDateTimeString2比較我在數據庫中..它說,沒有這樣的日期......即。 currentDateTimeString2.equals(currentDateTimeString)... false –

1

日期以毫秒爲單位表示。 new Date返回當前日期,按日期表示年,月,日,小時,分鐘,秒,毫秒。

可以通過Date.isAfter進行比較。

請勿使用字符串來比較日期。不要使用==比較對象。