Sample code for 30+ languages & platforms
SQL Server

Uncompress a Gzip File to a Specific Output File

See more Gzip Examples

This example demonstrates how to use the UncompressFile method to decompress a Gzip (.gz) file and write the uncompressed data to a specified output file.

The method reads the compressed input file and writes the decompressed contents to the output path provided. The output filename is explicitly specified by your application and does not depend on the filename embedded within the Gzip file.

This provides full control over where and how the decompressed file is created.

Chilkat SQL Server Downloads

SQL Server
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    -- Important: Do not use nvarchar(max).  See the warning about using nvarchar(max).
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @success int
    SELECT @success = 0

    -- This example demonstrates how to uncompress a Gzip (.gz) file
    -- and write the uncompressed output to a specified file.

    DECLARE @gzip int
    EXEC @hr = sp_OACreate 'Chilkat.Gzip', @gzip OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    -- The input Gzip file and output file:
    DECLARE @gzPath nvarchar(4000)
    SELECT @gzPath = 'example.txt.gz'
    DECLARE @outPath nvarchar(4000)
    SELECT @outPath = 'output.txt'

    -- Uncompress the file:
    EXEC sp_OAMethod @gzip, 'UncompressFile', @success OUT, @gzPath, @outPath
    IF @success = 0
      BEGIN
        EXEC sp_OAGetProperty @gzip, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @gzip
        RETURN
      END


    PRINT 'Gzip file successfully uncompressed.'

    PRINT 'Output file: ' + @outPath

    EXEC @hr = sp_OADestroy @gzip


END
GO