Ciao amici,
ho un grande problema, non riesco a fare un confronto tra 2 date.
In pratica ho una stringa di questo tipo:
String data = "23/10/2005";
Dovrei fare il confronto di questa stringa con la data di oggi.
Potere aiutarmi?
Grazie mille.
Ciao amici,
ho un grande problema, non riesco a fare un confronto tra 2 date.
In pratica ho una stringa di questo tipo:
String data = "23/10/2005";
Dovrei fare il confronto di questa stringa con la data di oggi.
Potere aiutarmi?
Grazie mille.
Hai proprio una stringa o una data che converti in stringa?
Comunque, se vogliamo risolvere il problema specifico che hai segnalato eccoti il codice:
Considera che daConfrontare ha come orario 00:00, quindi se adesso fosse 23/10/2005 12:00, risulterebbe che "oggi č dopo di daConfrontare"codice:// Genero data partendo da una stringa che rispetti il pattern // gg/mm/aaaa java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("dd/MM/yyyy"); java.util.Date daConfrontare = sdf.parse("23/10/2005"); // Catturo la data di oggi java.util.Date oggi = java.util.GregorianCalendar.getInstance().getTime(); // Faccio confronto if(oggi.compareTo(daConfrontare)<0) { System.out.println("oggi č prima di daConfrontare"); } else if(oggi.compareTo(daConfrontare)>0) { System.out.println("oggi č dopo di daConfrontare"); } else if(oggi.compareTo(daConfrontare) == 0) { System.out.println("oggi č uguale a daConfrontare"); }
Ciao
Diego Purpo
Effetti Collaterali - Il lato oscuro dell'informatica
Infocube
Sviluppo Software
diego.purpo[at]effetticollaterali.it
ottimizzandolo
codice:String data = "23/10/2005"; SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); try { Date toCompare = sdf.parse(data); Date today = new Date(); int compare = toCompare.compareTo(today); if (compare < 0) System.out.println("prima"); else if (compare > 0) System.out.println("dopo"); else System.out.println("uguali"); } catch (ParseException pex) { }
ciao amici,
č proprio quello che mi serviva.
Grazie mille.
ciao amici,
in veritā eseguendo lo script mi sono accorto che non č quello che mi serviva.
A me serve che mi esce la differenza dei giorni. Esempio
data vecchia = 23/10/2005;
data oggi = 30/10/2005;
oggi - vecchia = 7
Potete aiutarmi?
GRazie.
ho risolto ecco:
long sax = (today.getDate() - toCompare.getDate());
![]()
ragazzi sto impazzendo.
Purtroppo lo sscript mi funaziona soltnato per i giorni.
A me serve fare la differenza anche dei mesi ed anni esempio:
30/10/2005 - 30/10/2004 = 365;
GRazei mille a tutti
ecco amici ci sono riuscito:
long sax = ((today.getTime() - toCompare.getTime())/60/60/24/1000);