Sample code for 30+ languages & platforms
C++

Untar a .tar.gz (.tgz) Compressed Archive

See more Tar Archive Examples

Untar a .tar.gz (.tgz) GZIP compressed archive.

Chilkat C++ Downloads

C++
#include <CkTar.h>

void ChilkatSample(void)
    {
    bool success = false;

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

    //  Untar a .tar archive.
    CkTar tar;

    //  Untar into c:/temp/untarDir.  The directory tree(s) contained
    //  within the TAR archive will be re-created rooted at this
    //  directory.
    tar.put_UntarFromDir("/Users/chilkat/temp/untarDir");

    //  If any filepaths within the Tar archive are absolute,
    //  automatically make them relative by removing the first
    //  forward or backward slash.  This protects from untarring
    //  files to unexpected locations.
    tar.put_NoAbsolutePaths(true);

    success = tar.UntarGz("/Users/chilkat/testData/tar/abc123.tar.gz");
    if (success != true) {
        std::cout << tar.lastErrorText() << "\r\n";
    }
    else {
        std::cout << "Success" << "\r\n";
    }
    }