PureBasic
PureBasic
Create .taz, .tar.Z TAR Archive
See more Tar Archive Examples
Demonstrates how to create a compressed TAR archive containing an entire directory tree. This example creates a compressed archive using Unix "Z" compression. The typical file extensions used are .tar.Z and .taz.Chilkat PureBasic Downloads
IncludeFile "CkUnixCompress.pb"
IncludeFile "CkTar.pb"
Procedure ChilkatExample()
success.i = 0
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
tar.i = CkTar::ckCreate()
If tar.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
; The TAR component will produce a GNU tar 1.13.x format
; archive by default.
; It is also possible to create PAX -- POSIX 1003.1-2001 format
; or USTAR -- POSIX 1003.1-1988 format.
; Set the WriteFormat property to "gnu", "pax", or "ustar" to
; choose the output TAR format:
CkTar::setCkWriteFormat(tar, "gnu")
; Add a directory tree to be included in the output TAR archive:
success = CkTar::ckAddDirRoot(tar,"/Users/chilkat/temp/abc123")
If success <> 1
Debug CkTar::ckLastErrorText(tar)
CkTar::ckDispose(tar)
ProcedureReturn
EndIf
; First write a .tar, then compress to a .Z using UnixCompress.
success = CkTar::ckWriteTar(tar,"/Users/chilkat/testData/tar/abc123.tar")
If success <> 1
Debug CkTar::ckLastErrorText(tar)
CkTar::ckDispose(tar)
ProcedureReturn
EndIf
uc.i = CkUnixCompress::ckCreate()
If uc.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkUnixCompress::ckCompressFile(uc,"/Users/chilkat/testData/tar/abc123.tar","/Users/chilkat/testData/tar/abc123.tar.Z")
If success <> 1
Debug CkUnixCompress::ckLastErrorText(uc)
Else
Debug "Success."
EndIf
CkTar::ckDispose(tar)
CkUnixCompress::ckDispose(uc)
ProcedureReturn
EndProcedure