Si, le paso 3 para que me pille abril...
Lo acabo de conseguir con la siguiente ñapa (por si le vale a alguien):
Código:
Calendar calendarioInicioSemana = Calendar.getInstance();
/* Calculamos el lunes de la semana dada */
calendarioInicioSemana.set(bAnio, bMes-1, bDia, 0, 0, 0);
/* Si es domingo restamos 7 dias porque calcula la semana siguiente */
if (calendarioInicioSemana.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY){
calendarioInicioSemana.add(Calendar.DATE, Calendar.MONDAY - calendarioInicioSemana.get(Calendar.DAY_OF_WEEK));
calendarioInicioSemana.add(Calendar.DATE, -7);
} else {
calendarioInicioSemana.add(Calendar.DATE, Calendar.MONDAY - calendarioInicioSemana.get(Calendar.DAY_OF_WEEK));
}
Date primerDiaDeLaSemana = calendarioInicioSemana.getTime();
System.out.println(objetoSesion.formatFechaHora(primerDiaDeLaSemana));
Pero me gustaría saber como hacero bien...