¿Cómo debo agregar 120 días a mi fecha actual que obtuve usando el formato de fecha simple?
He visto pocas publicaciones al respecto, pero no pude hacerlo funcionar,
Mi código está abajo:
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); //get current date time with Date() Date date = new Date();
¿Debo usar la biblioteca de Calendar
o puedo hacerlo con un formato de fecha simple?
Básicamente, puede usar un Calendar
que tiene la capacidad de rodar automáticamente los diversos campos de una fecha basándose en los cambios en un solo campo, por ejemplo …
Calendar cal = Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.DATE, 120); date = cal.getTime();
Eche un vistazo más de cerca al Calendar
para más detalles.
Sí, hay una manera de hacerlo usando Joda Time, pero podría escribir este ejemplo más rápido;)
Actualización con el ejemplo de JodaTime
El siguiente es un ejemplo usando JodaTime . Podrías analizar el valor String
directamente usando JodaTime, pero como ya lo has hecho, no me molesté …
Date date = ...; DateTime dt = new DateTime(date); dt = dt.plusDays(120); date = dt.toDate();
Le sugiero que use Joda
DateTime si es posible. La ventaja es que maneja TimeZone con mucha gracia. A continuación, le indicamos cómo agregar días:
DateTime added = dt.plusDays(120);
Referencia: http://joda-time.sourceforge.net/apidocs/org/joda/time/DateTime.html#plusDays(int)