Gestire le date in Java.. è semplice!
Informatica, Programmazione, Java Aprile 5th, 2007Secondo una statistica in 4 applicazioni su 5 si manipola con date e ore… ma quando serve non ci si ricorda mai da che parte iniziare e ci si affida al miglior amico del programmatore.
Fortunamente in JAVA esistono 2 bellissime classi: SimpleDateFormat e Calendar, che ci rendono più semplice la vita :)!
Di seguito ho raccolto una serie di esempi classici, che spero possano esservi d’aiuto prima o poi.
Ottenere la data / ora odierna (non formattata e non localizzata)
Date now = Calendar.getInstance().getTime();
Ottenere la data / ora odierna formattata gg/mm/aaaa con ora hh:mm:ss
Calendar now = Calendar.getInstance();
SimpleDateFormat formatter = new SimpleDateFormat("dd/mm/yyyy hh:mm:ss");
formatter.format(now.getTime())
Sottrarre 2 anni alla data odierna e successivamente aggiungere 5 giorni ad “oggi”
Calendar now = Calendar.getInstance();
Calendar working;
SimpleDateFormat formatter = new SimpleDateFormat("yyyy.MM.dd 'ore' hh:mm:ss");
working = (Calendar) now.clone(); working.add(Calendar.DAY_OF_YEAR, - (365 * 2)); 2 anni fa: formatter.format(working.getTime());
working = (Calendar) now.clone(); working.add(Calendar.DAY_OF_YEAR, + 5); 5 giorni dopo : formatter.format(working.getTime())
Differenza tra 2 date in giorni
Date startDate1 = new GregorianCalendar(2001, 02, 14, 14, 00).getTime(); Date endDate1 = new Date();;
long diff = endDate1.getTime() - startDate1.getTime();
Differenza in giorni : (diff / (1000L*60L*60L*24L))
Convertire una data dal formato americano a quello italiano (senza ora)
SimpleDateFormat formatterIT = new SimpleDateFormat("dd/MM/yyyy");
SimpleDateFormat formatterEN = new SimpleDateFormat("yyyy/MM/dd");
Date dateIT = formatterEN .parse("2007/04/05");
String dataEN = formatterIT .format(dateIT );
[Alcuni esempi idevelopment.info]
Settembre 15th, 2008 at 10:38
Ciao, complimenti per il lavoro. Capita sempre che ciò che si cerca è l’unica cosa che non viene contemplata. Le ultime righe del tuo post danno la possibilità di formattare una data (di tipo Date) nel formato IT gg/mm/aaaa, bene! Ma perchè poi il formato cambia a string? Voglio dire, c’è una bella differenza. A me serve una Date non una stringa. Come mi faccio restituire un Date nel formato che dico io?? Grazie del supporto tecnico!
Luglio 14th, 2010 at 10:50
Grazie per gli esempi, si sono rivelati utilissimi perché non è facile trovarli neanche sui manuali, e spesso un esempio è molto più chiaro di mille parole.