import java.util.Date;
import java.util.Calendar;
import java.text.SimpleDateFormat;
import java.util.*;
public class CalendarExample {
private static void CalendarTimemethod() {
Date date = Calendar.getInstance().getTime();
System.out.println("La Fecha actual es: " + date);
System.out.println();
}
private static void SimpleDateFormatmethod() {
Calendar date = Calendar.getInstance();
SimpleDateFormat dateformatter = new SimpleDateFormat("E dd/MM/yyyy 'a las' hh:mm:ss a zzz");
System.out.println("La fecha actual en un formato dado: " + dateformatter.format(date.getTime()));
System.out.println();
}
private static void Adddates() {
System.out.println("Realizando operaciones con las fechas del calendario");
// Get today's date
Calendar date = Calendar.getInstance();
Calendar cldr;
SimpleDateFormat dateformatter = new SimpleDateFormat("E dd/MM/yyyy 'a las' hh:mm:ss a zzz");
cldr = (Calendar) date.clone();
cldr.add(Calendar.DAY_OF_YEAR, - (365 * 2));
System.out.println(" Dos años atras era: " + dateformatter.format(cldr.getTime()));
cldr = (Calendar) date.clone();
cldr.add(Calendar.DAY_OF_YEAR, + 5);
System.out.println(" Cinco días despues de hoy sera: " + dateformatter.format(cldr.getTime()));
System.out.println();
}
private static void DateDifference() {
System.out.println("Diferencia entre dos fechas");
Date startDate1 = new GregorianCalendar(2005, 02, 25, 14, 00).getTime();
Date endDate1 = new Date();;
long diff = endDate1.getTime() - startDate1.getTime();
System.out.println(" Diferencia entre '" + endDate1 + "' y '" + startDate1 + "'");
System.out.println(" es de " + (diff / (1000L*60L*60L*24L)) + " días.");
System.out.println();
}
private static void Getcalendermethods() {
System.out.println("Varios metodos de la clase Calendar:");
Calendar calender = Calendar.getInstance();
System.out.println("Año : " + calender.get(Calendar.YEAR));
System.out.println("Mes (enero es el mes 0) : " + calender.get(Calendar.MONTH));
System.out.println("Día del mes : " + calender.get(Calendar.DAY_OF_MONTH));
System.out.println("Día de la semana (la semana empieza el domingo) : " + calender.get(Calendar.DAY_OF_WEEK));
System.out.println("Día del año : " + calender.get(Calendar.DAY_OF_YEAR));
System.out.println("Semana del año : " + calender.get(Calendar.WEEK_OF_YEAR));
System.out.println("Semana del mes : " + calender.get(Calendar.WEEK_OF_MONTH));
System.out.println("Día de la semana en el mes : " + calender.get(Calendar.DAY_OF_WEEK_IN_MONTH));
System.out.println("AM PM : " + calender.get(Calendar.AM_PM));
System.out.println("Hora : " + calender.get(Calendar.HOUR_OF_DAY));
System.out.println("Minutos : " + calender.get(Calendar.MINUTE));
System.out.println("Segundos : " + calender.get(Calendar.SECOND));
System.out.println();
}
public static void main(String[] args) {
System.out.println();
CalendarTimemethod();
SimpleDateFormatmethod();
Adddates();
DateDifference();
Getcalendermethods();
}
}
Comentarios sobre la versión: Versión 1 (2)
Date FechadeInicio = new GregorianCalendar(2005, 02, 25, 14, 00).getTime();
Ya que si logro que caigan dentro de esa fecha inicial entonces lo que quedaria es hacer la diferencia con
Date FechaFinal1 = new Date(); // fecha actual
long diff = FechaFinal1.getTime() - FechadeInicio.getTime(); Guarda diferencia en diff; etc etc etc.
Yo se que tengo q llamar a Scanner para leer los datos pero como hago para que queden guardados en FechaInicio. ????
Gracias por su ayuda
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Scanner;
public class Programa {
public static void main (String []args) {
Calendar c1 = GregorianCalendar.getInstance();
int a,b,c;
Scanner in = new Scanner(System.in);
System.out.print("Dia: ");
a= in.nextInt();
System.out.print("Mes: ");
b= in.nextInt();
System.out.print("Año: ");
c= in.nextInt();
switch(b){
case 1:{
b=Calendar.JANUARY;
break;
}
case 2:{
b=Calendar.FEBRUARY;
break;
}
case 3:{
b=Calendar.MARCH;
break;
}
case 4:{
b=Calendar.APRIL;
break;
}
case 5:{
b=Calendar.MAY;
break;
}
case 6:{
b=Calendar.JUNE;
break;
}
case 7:{
b=Calendar.JULY;
break;
}
case 8:{
b=Calendar.AUGUST;
break;
}
case 9:{
b=Calendar.SEPTEMBER;
break;
}
case 10:{
b=Calendar.OCTOBER;
break;
}
case 11:{
b=Calendar.NOVEMBER;
break;
}
case 12:{
b=Calendar.DECEMBER;
break;
}
default : {
System.out.println("Este mes no esta disponible");
}
}
c1.set(c,b,a);
c1.add(Calendar.HOUR, 24);
System.out.println("El siguiente dia sera: "+c1.getTime().toLocaleString());
}
}