Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [java] confrontare 2 DATE

    Ciao,
    ho un piccolo problema. Come potrei fare per confrontare 2 date, verificando che l'una sia 6 mesi più vecchia dell'altra?

    Esempio:
    12/01/2005 < 14/08/2005 vero
    12/01/2005 < 14/03/2005 falso

    spero di essere stato chiaro.

    ah, le due date sono di tipo java.util.Date

    Grazie.

  2. #2

  3. #3
    cercavo qlc di più semplice....per i posteri...io ho risolto così:

    if (Math.abs((oggi.getMonth()+1)-(data.getMonth()+1))>=6)

    ..anche se utilizzo il metodo deprecato getMonth()!!!

    Se qlc ha idee migliori...

    ciao

  4. #4
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837

    se le date sono 1/12/2005 e 1/1/2006 il codice non funziona

    fai così
    if (data1.getTime()-data2.getTime() < 1000*60*60*24*30*6)
    ma è poco preciso perchè i mesi non sono tutti di 30 gg

    con i Calendar è facile

    Calendar c1 = Calendar.getInstance();
    c1.setTime(data1);
    c1.add(Calendar.MONTH, 6);
    if (c2.before(c1))

  5. #5
    si lo sò...avevo tralasciato il fatto che la data che viene confrontata con quella odierna viene aggiornata ogni 6 mesi...quindi il problema non si pone! Credo...

    il data1 contenuto in c1.setTime(data1); è di tipo Date?

    Se così fosse allora propenderei per i calendar!!!

    Ora provo!

    Grazie mille!

  6. #6
    Funzia!!

    Thanx!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.