Ver la Versión Completa : Último fichero modificado ?
¿Cómo puedo saber el último fichero modificado/creado de un directorio?
Gracias.
Hola,
Utiliza las funciones "FindFirst", "FindNext", etc., para listar los archivos del directorio de marras: encontrarás información sobre esto a poco que realizes una búsqueda (http://www.clubdelphi.com/foros/search.php?) en estos Foros. Una vez tengas la lista de archivos que hay en el directorio que te interesa, ya podrás utilizar la función (por ejemplo) "GetFileTime" (digo por ejemplo, porque acaso exista otra u otras funciones para realizar esta tarea) para obtener la fecha de creación/modificación de los archivos. Una vez tengas las distintas fechas de los ficheros... es cuestión de comparar dichas fechas para averiguar cuál es la más actual, esto es, cuál es el fichero que se modificó/creó en último lugar de los que se encuentran en el directorio. Ponte con ello. Si necesitas ayuda ya sabes dónde estamos. ;)
Una vez que hayas encontrado todos los archivos, el propio TSearchRec que devuelve FindFirst / FindNext, tiene un campo de tipo Twin32FindData con los siguientes campos:
7
typedef struct _WIN32_FIND_DATA { // wfd
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
TCHAR cFileName[ MAX_PATH ];
TCHAR cAlternateFileName[ 14 ];
} WIN32_FIND_DATA;
Ahí tienes las fechas que necesitas.
saludos
Hola,
Buena anotación Lepe. ;)
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.