Esempio completo per parsare la data come stringa e ottenerne i 3 campi separati come int:
codice:
import java.text.*;
import java.util.*;
public class ProvaData {
public static void main(String[] args) {
String str = "31-12-2009";
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
sdf.setLenient(false); // strict parsing
try {
Date d = sdf.parse(str); // Può lanciare ParseException
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(d);
int giorno = cal.get(Calendar.DAY_OF_MONTH);
int mese = cal.get(Calendar.MONTH) + 1; // MONTH è zero-based, quindi +1
int anno = cal.get(Calendar.YEAR);
System.out.println("Giorno = " + giorno);
System.out.println("Mese = " + mese);
System.out.println("Anno = " + anno);
} catch (ParseException e) {
System.out.println("Data malformata o inesistente");
}
}
}