Cómo obtener el nombre del mes utilizando la fecha actual como entrada en la función
¿Cómo puedo crear una función que tome la fecha actual y el nombre del mes de regreso?
Tengo solamente fecha su fecha no actual puede ser cualquier fecha como 2013/4/12 o 23/8/8.
Como String monthName("2013/9/11");
Cuando llama a esta función devuelve el nombre del mes.
- Cómo cambiar el idioma de fecha y hora en android
- Android obtiene diferencia en milisegundos entre dos fechas
- ¿Los hilos son lo suficientemente fiables para calcular segundos?
- ActiveAndroid: columnas de fecha no creadas
- Comprobación de Android de la fecha cambiada
- Notificación de Android en una fecha específica
- Fechas de genarate entre dos fechas en android
- ¿Hay alguna biblioteca o algoritmo para convertir Shamsi (Jalali) a fecha gregoriana en Java?
- Java: ¿Cómo analizar el formato de fecha para mostrar el formato de salida específico?
- Busquen una letra abreviatura de week day of a date en java
- Análogo incorrecto de cadenas de fecha en SimpleDateFormat
- Java calcular el tiempo entre dos timestamps
- Cómo configurar el tiempo de época java?
Esto debería estar bien.
Depende del formato de la fecha. Si usted intenta con el 1 de febrero de 2011 que trabajaría, apenas cambie esta secuencia "MMMM d, aaaa" según sus necesidades. Compruebe esto para todos los patrones de formato.
Y también, los meses son 0 basado, así que si quieres que enero sea 1, sólo devuelva el mes + 1
private static int getMonth(String date) throws ParseException{ Date d = new SimpleDateFormat("MMMM d, yyyy", Locale.ENGLISH).parse(date); Calendar cal = Calendar.getInstance(); cal.setTime(d); int month = cal.get(Calendar.MONTH); return month + 1; }
Si desea nombre de mes intente esto
private static String getMonth(String date) throws ParseException{ Date d = new SimpleDateFormat("MMMM d, yyyy", Locale.ENGLISH).parse(date); Calendar cal = Calendar.getInstance(); cal.setTime(d); String monthName = new SimpleDateFormat("MMMM").format(cal.getTime()); return monthName; }
Como dije, revise la página web que publiqué para todos los patrones de formato. Si desea sólo 3 caracteres del mes, utilice "MMM" en lugar de "MMMM"
Puede obtener el "número" del mes como se describe en la otra respuesta y, a continuación, podría simplemente utilizar un interruptor para obtener un nombre. Ejemplo:
switch(month) { case 0: your name is January break; ... }
PS Creo que los meses son basados en cero, pero no estoy 100% seguro …
Utilice este código –
Calendar calendar = new GregorianCalendar(); calendar.setTime(date); int month = calendar.get(Calendar.MONTH);
Así que ahora tienes un número de mes, puedes usar switch case para obtener el nombre de ese mes.
Si su fecha está en el formato de la secuencia utilice esto-
Date date = new SimpleDateFormat("yyyy-MM-dd").format(d)
- ¿Cómo hago que la ventana de vista previa intellij android permanezca abierta?
- Deshabilitar los servicios de android en init.rc