2011-03-07 13 views

Respuesta

19

Puede usar Date.parse para convertir la cadena en una fecha y luego indexarla con Calendar.DAY_OF_WEEK para obtener el día específico. Ejemplo:

assert Date.parse("yyyy-MM-dd", "2011-03-07")[Calendar.DAY_OF_WEEK] == Calendar.MONDAY 

Si desea que el día como una cadena, pruebe el método Date.format. La salida exacta depende de la configuración regional:

assert Date.parse("yyyy-MM-dd", "2011-03-07").format("EEE") == "Mon" 
assert Date.parse("yyyy-MM-dd", "2011-03-07").format("EEEE") == "Monday" 

consulte la documentación de SimpleDateFormat para más información sobre las cadenas de formato.

Si desea formatear el día para una configuración regional específica, deberá crear un objeto SimpleDateFormat y pasar un objeto de configuración regional.

fmt = new java.text.SimpleDateFormat("EEE", new Locale("fr")) 
assert fmt.format(Date.parse("yyyy-MM-dd", "2011-03-07")) == "lun." 
fmt = new java.text.SimpleDateFormat("EEEE", new Locale("fr")) 
assert fmt.format(Date.parse("yyyy-MM-dd", "2011-03-07")) == "lundi" 
0
new SimpleDateFormat('E').format new SimpleDateFormat('yyyy-MM-dd').parse('2011-03-07') 
0
new SimpleDateFormat('E').format Date.parse("10-jan-2010") 

más ordenado para mí

Cuestiones relacionadas