2012-10-15 10 views

risposta

19
SimpleDateFormat dfDate = new SimpleDateFormat("dd/MM/yyyy"); 
    java.util.Date d = null; 
    java.util.Date d1 = null; 
    Calendar cal = Calendar.getInstance(); 
    try { 
      d = dfDate.parse("01/02/2012 "); 
      d1 = dfDate.parse(dfDate.format(cal.getTime()));//Returns 15/10/2012 
     } catch (java.text.ParseException e) { 
      e.printStackTrace(); 
     } 

    int diffInDays = (int) ((d.getTime() - d1.getTime())/ (1000 * 60 * 60 * 24)); 
    System.out.println(diffInDays); 

Controllare Ex1 e Ex2 per esempio più dettagliato

+0

01/02/2013 data è la data di correzione ma non desidero correggere la data corrente nel mio codice a mano. Lo voglio quando eseguo l'app, prende la data corrente dal sistema e calcola le diffirenze. Come posso ottenere la data corrente dal sistema e correggere il codice? –

+0

ho cambiato il codice, lo controllo di nuovo –

+0

grazie mille. Spero che funzioni –

1

Si può prendere uno sguardo in DateUtils, che offre alcuni metodi di utilità per calcolare il tempo trascorso tra due date, ma solo per la rappresentazione. Non utilizzare l'approccio diretto per la conversione tra giorni/millisecondi poiché non prende in considerazione gli anni bisestili, i secondi bisestili, le modifiche all'orario estivo/invernale, ecc. Tali considerazioni sono gestite dalle classi Calendar.

Aggiornamento È possibile utilizzare Joda libreria per eseguire di data e ora relativi calcoli come quello che vi serve.

Problemi correlati