Sample code for 30+ languages & platforms
Delphi DLL Requires Chilkat v11.0.0+

Example for the Zip AppendNew Function

See more Zip Examples

Demonstrates the Zip AppendNew function.

Chilkat Delphi DLL Downloads

Delphi DLL
var
success: Boolean;
zip: HCkZip;
zipPath: PWideChar;
pathInZip: PWideChar;
entry: HCkZipEntry;

begin
success := False;

//  This example assumes the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

zip := CkZip_Create();

zipPath := 'c:/temp/qa_output/test.zip';

//  Initialize the zip object, which also sets the FileName property to the path of the zip to be created.
CkZip_NewZip(zip,zipPath);

//  Append a new and empty file to the zip object.
//  This does not write the zip file.  It simply adds an entry
//  that will get processed when the zip is written.
CkZip_AddEmpty(zip,False,'empty.txt');

//  Append another entry..
pathInZip := 'abc/helloWorld.txt';
CkZip_AddEmpty(zip,False,pathInZip);

//  Add some data to this entry..
entry := CkZipEntry_Create();
CkZip_EntryOf(zip,pathInZip,entry);
CkZipEntry_AppendString(entry,'Hello World','utf-8');

//  Write the zip, which contains 2 files:  empty.txt and helloWorld.txt
CkZip_putFileName(zip,zipPath);
success := CkZip_WriteZipAndClose(zip);
if (success = False) then
  begin
    Memo1.Lines.Add(CkZip__lastErrorText(zip));
    Exit;
  end;

Memo1.Lines.Add('Success.');

CkZip_Dispose(zip);
CkZipEntry_Dispose(entry);