Dans mon cas il faudrait que les fichiers soient trouvés dans l'ordre de création (ou de dernière modification), mais je ne sais pas si cela est fait pas défaut, ou si l'ordre des fichiers retourner par FindFirst/FindNext est totalement aléatoire.
Merci d'avance a ceux qui auront une reponse a proposer.
Essaie ce code (ici, il remplit un composant Listbox (LB) avec la liste triée par ordre de création)
procedure TForm1.Chercher(Sender: TObject);
procedure AddInList(ASL : TStringList; ARech : TSearchRec);
begin
if ARech.Attr <> faDirectory
then ASL.Add(DateTimeToStr(FileDateToDateTime(ARech.Time)) +'|'+ ARech.Name);
end;
var
{--------------------------------}
LSR_Rech : TSearchRec;
{--------------------------------}
LSL_Rech : TStringList;
{--------------------------------}
i : Integer;
{--------------------------------}
LS_LongName : String;
{--------------------------------}
begin
LSL_Rech := TStringList.Create;
if FindFirst({Nom du répertoire} +'\*.*', faAnyFile, LSR_Rech) = 0 then begin
AddInList(LSL_Rech, LSR_Rech);
while FindNext(LSR_Rech) = 0
do AddInList(LSL_Rech, LSR_Rech);
end;
FindClose(LSR_Rech);
LSL_Rech.Sort;
For i := 0 to LSL_Rech.Count - 1 do begin
LS_LongName := LSL_Rech.Strings[i];
LB.Items.Add(Copy(LS_LongName, Pos('|', LS_LongName) + 1, Length(LS_LongName)));
end;
LSL_Rech.Free;
end;
@Cari
Tu te permets bien...
Désolé, j'avais pas vu ton snippet la dernière fois...
Eh ! mais il n'y est plus ! Je voulais le récupérer pour m'updater.
T'avais la même erreur ?