Hallo Willie
du schreibst in #10, dass du die Files aus der ZIP Datei zuerst auf Platte in einen Ordner abspeichern willst. Dabei willst du die in der ZIP vorhandene Unterordnerstruktur nicht übernehmen. Wenn du das so tust, dann sind wahrscheinlich Kollisionen punkto Filenamen nicht vermeidbar(?). Vielleicht hast du aber auch eindeutige Namen für deine Bilder gewählt - dann wäre ja alles gut.
ZIP Datei auspacken in einen Ordner ohne dabei die Unterordnerstruktur zu übernehmen:
Delphi-Quellcode:
procedure auspacken( zipfilename : string; ausgabeordner : string );
var
zip : TZipfile;
filename : string;
begin
if forcedirectories(ausgabeordner) then
if TZipFile.IsValid( zipfilename ) then
begin
zip := TZipFile.Create;
try
zip.Open( zipfilename,zmRead );
for filename in zip.FileNames do
zip.Extract( filename, ausgabeordner, false);
finally
zip.Free;
end;
end;
end;
Die Bilder filterst du vor (wenn du zum Beispiel nur auf FileExtension prüfst) oder nach dem Extract raus.
Wie oben mehrfach erwähnt wird: Wenn du Bild nach Bild in deinem Programm anzeigen (und nie als Datei auf Platte) willst, dann ist der Weg über Streams praktischer.