Sample code for 30+ languages & platforms
Delphi ActiveX

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 ActiveX Downloads

Delphi ActiveX
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
gzip: TChilkatGzip;
dt: TCkDateTime;
inputStr: WideString;

begin
success := 0;

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

gzip := TChilkatGzip.Create(Self);
dt := TCkDateTime.Create(Self);

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

// Apply the date/time to the Gzip object:
success := gzip.SetDt(dt.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(gzip.LastErrorText);
    Exit;
  end;

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

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