¿Cómo puedo imprimir una fecha indicando nombres del día y mes?

publicado por: Anonymous

Necesito mostrar la fecha actual del sistema con formato “Martes 07 de Febrero del 2017”.

//obtengo la fecha actual
Date today = new Date();
lblFecha.setText(today);

Por ejemplo hoy es “Martes 07 de Febrero 2017” y mañana sería “Miércoles 08 de Febrero del 2017” y así conforme vayan pasando los dias, meses y años.

solución

import java.util.Calendar;

public class JavaApplication4 {

    public static void main(String[] args) {

        // Meses del anio
        String MES[] = {"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"};

        // Dias de la semana
        String DIA[] = {"Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado"};

        Calendar calendario = Calendar.getInstance();

        String fecha = DIA[calendario.get(Calendar.DAY_OF_WEEK) - 1] + " " + calendario.get(Calendar.DAY_OF_MONTH)+ " de " + MES[calendario.get(Calendar.MONTH)] + " del " + calendario.get(Calendar.YEAR);

        lblFecha.setText(fecha);

    }

}

Actualizacion

Debido a comentarios realizados por otros usuarios de la comunidad, respecto a la solucion y su rendimiento, he aqui una solucion que tambien puede servir para tu pregunta.

import java.text.SimpleDateFormat;
import java.util.Date;

public class JavaApplication4 {

    public static void main(String[] args) {

        String fecha = new SimpleDateFormat("EEEE dd 'de' MMMM 'del' YYYY").format(new Date());

        System.out.println(fecha);

    }

}

Resultado:

martes 07 de febrero del 2017

La clase SimpleDateFormat recibe como parametro constructor un formato de fecha, cuya sintaxis puedes validar aqui, este nos retorna una cadena (String), la cual podra ser pasada al JLabel. Ten en cuenta entonces los siguientes elementos respecto a la cadena del formato.

Los ' permiten escapar un texto dentro del formato, con lo cual se podra cambiar el de/del, para organizarlo como desees.

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *