lo que puedes hacer es cuando lees los contenido del directorio, los archivos los vas guardando en una matriz y agregandole un dato importante como la fecha y si es directorio o no.
Luego puedes ordenar esa matriz segun sean directorio y por fecha (un bubblesort te sirve) o aplicar la funcion que ordena array segun una funcion de comparacion.
Este tips te puede servir para lo segundo
Ordenar Archivos en Matriz
Saludos