Sample code for 30+ languages & platforms
Delphi DLL

Set a Custom Last-Modified Date in a Gzip File

See more Gzip Examples

This example demonstrates how to use the SetDt method to specify a custom last-modified date and time that will be embedded in a Gzip file.

A CkDateTime object is first initialized with a specific date/time using an RFC 822 formatted string. This date/time is then applied to the Gzip object using SetDt.

When a compression method is called (such as CompressStringToFile), the specified date/time is included in the Gzip metadata. This allows the resulting .gz file to carry a meaningful timestamp rather than using the current system time.

Chilkat Delphi DLL Downloads

Delphi DLL
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, CkDateTime, Gzip;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Boolean;
gzip: HCkGzip;
dt: HCkDateTime;
inputStr: PWideChar;

begin
success := False;

// This example demonstrates how to set a custom last-modified date/time
// that will be embedded in a Gzip file.

gzip := CkGzip_Create();
dt := CkDateTime_Create();

// Set the date/time using a timestamp format (ISO 8601 style):
CkDateTime_SetFromTimestamp(dt,'2025-11-15T12:45:26-05:00');

// Apply the date/time to the Gzip object:
success := CkGzip_SetDt(gzip,dt);
if (success = False) then
  begin
    Memo1.Lines.Add(CkGzip__lastErrorText(gzip));
    Exit;
  end;

// Compress a string so the custom date/time is embedded in the .gz:
inputStr := 'Example text for Gzip compression.';
success := CkGzip_CompressStringToFile(gzip,inputStr,'utf-8','output.gz');
if (success = False) then
  begin
    Memo1.Lines.Add(CkGzip__lastErrorText(gzip));
    Exit;
  end;

Memo1.Lines.Add('Gzip file created with custom last-modified date.');

CkGzip_Dispose(gzip);
CkDateTime_Dispose(dt);

end;