La clase TZipFile, de la unidad Zip de Delphi es una herramienta esencial para la compresión y descompresión de archivos.
En este artículo, te brindaremos ejemplos de la clase TZipFile, aprendiendo cómo comprimir y descomprimir archivos mejorando la eficiencia y organización en tus proyectos.
Comprimir archivos con la clase TZipFile
uses
System.Zip;
procedure ComprimirArchivos(const Archivos: array of string; const Destino: string);
var
ZipFile: TZipFile;
Archivo: string;
begin
ZipFile := TZipFile.Create;
try
ZipFile.Open(Destino, zmWrite);
for Archivo in Archivos do
ZipFile.Add(Archivo);
finally
ZipFile.Close;
ZipFile.Free;
end;
end;
Descomprimir archivos con la clase TZipFile
procedure DescomprimirArchivo(const ArchivoZip: string; const Destino: string);
var
ZipFile: TZipFile;
begin
ZipFile := TZipFile.Create;
try
ZipFile.Open(ArchivoZip, zmRead);
ZipFile.ExtractAll(Destino);
finally
ZipFile.Close;
ZipFile.Free;
end;
end;
En el caso de querer descomprimir un solo archivo se puede utilizar el siguiente ejemplo
procedure DescomprimirArchivo(const ArchivoZip: string; const Destino: string);
var
ZipFile: TZipFile;
begin
ZipFile := TZipFile.Create;
try
ZipFile.Open(ArchivoZip, zmRead);
ZipFile.Extract('archivo_a_descomprim.ir', Destino);
finally
ZipFile.Close;
ZipFile.Free;
end;
end;
Porque utilizar TZipFile y no las innumerables librerias que podemos encontrar en internet:
- Eficiencia: TZipFile optimiza la compresión y descompresión de archivos, reduciendo el uso de recursos de memoria y CPU como así el tiempo.
- Mantenimiento: La integración en proyectos existentes es sencilla, mejorando la gestión y organización de archivos ya que es una clase nativa en Delphi y no tneemos que lidiar con versiones e instalaciones de librerias de terceros.
- Compatibilidad: Los archivos comprimidos con TZipFile son ampliamente compatibles, asegurando que puedas compartir y utilizar los datos con cualquier aplicación de descompresión.