Warning: include(/homepages/28/d322425856/htdocs/v3rgu1/blog/wp-content/themes/v3rgu1/functions.php): failed to open stream: Permission denied in /homepages/28/d322425856/htdocs/v3rgu1/blog/wp-settings.php on line 329

Warning: include(): Failed opening '/homepages/28/d322425856/htdocs/v3rgu1/blog/wp-content/themes/v3rgu1/functions.php' for inclusion (include_path='.:/usr/lib/php7.4') in /homepages/28/d322425856/htdocs/v3rgu1/blog/wp-settings.php on line 329
2010 septiembre | v3rgu1.com

Archive for septiembre, 2010

13 29
09
2010

Cómo manejar fechas en Java

Miércoles, septiembre 29th, 2010

Como no podía ser menos, el primer artículo tenía que estar relacionado con el lenguaje de programación Java.

El manejo de fechas en Java puede resultar en un principio un poco menos intuitivo que en otros lenguajes tales como PHP o Visual Basic. Sin embargo, para trabajar con fechas de una forma más cómoda, contamos con la clase java.util.Calendar.

Calendar es una clase base abstracta con la que podremos representar y manejar fechas (objetos de tipo Date), así como modificar y obtener sus datos enteros tales como YEAR, MONTH, DAY, etc…

Para instanciar un objeto de clase Calendar, tendremos 2 opciones:

  • Opción A: Utilizar el método getInstance(), que nos proporcionará un objeto Calendar cuyos campos han sido inicializados con la fecha y la hora actuales.
  • Opción B: Utilizar el constructor de la clase GregorianCalendar. Esta clase es a su vez una subclase de java.util.Calendar, que nos proporciona un calendario estándar usado comunmente en la mayor parte del mundo.

A continuación mostramos el código de las 2 opciones mencionadas:

Date date = new Date();
Calendar calendar1 = Calendar.getInstance();
Calendar calendar2 = new GregorianCalendar();

Una vez instanciado el objeto Calendar, ya podemos manejar las fechas a nuestro antojo.

¿Cómo extraer los datos individuales de la fecha?

¿A que os suenan los famosos getters y setters…? pues esta clase no iba a ser menos.
La clase java.util.Calendar nos proporciona un único método get(int field) para extraer cualquier atributo del calendario que indiquemos en el atributo field, tal y como veremos a continuación en el siguiente código de ejemplo.
NOTA: Ten en cuenta que valores como el mes o el día de la semana comienzan por 0, no por 1.

// Instanciamos el objeto Calendar
Calendar calendar = Calendar.getInstance();
// Obtenemos el valor del año, mes y día.
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int date = calendar.get(Calendar.DATE);
System.out.println("AÑO ACTUAL: " + year);
System.out.println("MES ACTUAL: " + month);
System.out.println("DÍA ACTUAL: " + date);

¿Cómo modificar los atributos o valores de la fecha?

Al igual que disponemos del método get(int field) para obtener cualquier valor de una fecha, disponemos también del método set(int field, int value) para modificarlo.
Deberemos pasar 2 parámetros:

  • field: atributo de la fecha que queremos modificar
  • value: nuevo valor a asignar

Veamos a continuación un ejemplo de cómo modificar los atributos año, mes y día:

calendar.set(Calendar.YEAR, 2020);
calendar.set(Calendar.MONTH, 02); // OJO: Recueda que los valores de los meses comienzan por 0.
calendar.set(Calendar.DATE, 30);

Además del método simple set(int field, int value), disponemos también de 3 métodos más sobrecargados set que nos permitirán asignar fechas completas en un único paso:

// Asignamos año, mes y día.
calendar.set(2020, 02, 30);
// Asignamos año, mes, día, horas y minutos.
calendar.set(2020, 02, 30, 19, 00);
// Asignamos año, mes, día, horas, minutos y segundos.
calendar.set(2020, 02, 30, 19, 00, 55);

¿Cómo sumar y restar fechas?

He aquí uno de los métodos más útiles cuando queremos operar con fechas: add(int field, int amount).
Con la misma estructura que el método set(int field, int amount), podremos sumar (y por lo tanto restar) cantidades de diferentes valores a una fecha.

  • field: atributo de la fecha que queremos modificar y cuya cantidad pasaremos en el parámetro amount
  • amount: cantidad a sumar o restar (valores negativos) a la fecha

Viajemos en el tiempo y rejuvenezcamos 10 años:

// Sumamos 30 minutos a la fecha actual.
calendar.add(Calendar.MINUTE, 30);
// Sumamos 100 días a la fecha actual.
calendar.add(Calendar.DATE, 100);
// Restamos 10 años a la fecha actual.
calendar.add(Calendar.YEAR, -10);

Para más información sobre la clase Calendar podéis acceder también a la documentación de Sun (o de Oracle, como más os guste).

Espero que el artículo os haya sido de utilidad. Como habéis comprobado, la clase Calendar nos facilita la vida cuando queremos manejar fechas en java, y es muy fácil e intuitiva de utilizar. En próximas entregas, veremos cómo realizar más operaciones con fechas.

4 05
09
2010

Nace v3rgu1.com, por fin ya

Domingo, septiembre 5th, 2010

Sean todos bienvenidos.

Después de mucho tiempo, después de muchos inicios del proyecto, después de horas y horas de trabajo, después de diferentes diseños, hoy, cinco de septiembre de 2010, por fin nace v3rgu1.com.

Podéis pensar que es un blog más, y efectivamente, habéis acertado; pero como a todo creador, siempre nos gusta presumir de nuestra pequeña y humilde obra.

Pero… ¿podría haber aparecido antes? Sí, por supuesto.
Sin embargo, quería hacer algo propio, algo que me gustara y pudiera compartir con todos.
v3rgu1.com trata de ser un blog más de tecnología (y lo que se precie) en el mundo de internet, donde compartir mis humildes conocimientos, y seguro, que aprender de los vuestros.

El diseño es 100% propio y nuevo, si bien no deja de ser un pequeño homenaje a aquel primer conato de web que comencé ahora ya hace unos cuantos años: http://www.v3rgu1.tk.

En las próximas semanas, será publicada la primera versión del tema que diseña este blog, por lo que si estáis interesados en él, pronto se encontrará a vuestra disposición.

Espero veros pronto a todos navegando por la web, y que todo sea de vuestro agrado.

PD: Para los curiosos, la respuesta es sí.