//pasa la fecha de String a Date para la fecha leida por teclado
private static Date convertirFechaLectura(String fecha){
//Formato de la fecha a convertir
SimpleDateFormat formato = new SimpleDateFormat("MM/yyyy");
Date dat = null;
try{
dat=formato.parse(fecha);
}catch(ParseException ex){
}
return dat;
}
//leer entradas del teclado
private static void lecturaTeclado(){
Scanner lee=new Scanner(System.in);//lector
System.out.println("formato fecha "
+ "MM/yyyy -Ej.:03/2016: ");
String fl=lee.next();//leer fecha
fechaTeclado = convertirFechaLectura(fl);//pasar fecha a date
}
Formato de fechas:
Dentro del SimpleDateFormat puedes meter la forma en la que introduces la fecha.Ejemplo:
"yyyyy-mm-dd hh:mm:ss"
y - dígito del año.
m - dígito del mes en formato numérico.
d - dígito del día del mes (si el día es por ejemplo el 1 se introducirá como 01)
h - dígito de la hora del día
m - dígito del minuto
s - dígito del segundo
Dependiendo del SampleDateFormat el formato del Date es distinto:
String date_s = " 2011-01-18 00:00:00.0";
SimpleDateFormat dt = new SimpleDateFormat("yyyyy-mm-dd hh:mm:ss");
Date date = dt.parse(date_s);
SimpleDateFormat dt1 = new SimpleDateFormat("yyyyy-mm-dd");
System.out.println(dt1.format(date));