[Overview][Constants][Types][Classes][Procedures and functions][Index] | Reference for unit 'libtar' (#fcl)

# TTarWriter

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Class to write tar archives

## Declaration

Source position: libtar.pp line 181

`type TTarWriter = class`
`public`
`constructor Create();` |  | Create a new archive
`destructor Destroy; override;` |  | Close archive and clean up TTarWriter
`procedure AddFile();` |  | Add a file to the archive
`procedure AddStream();` |  | Add stream contents to archive.
`procedure AddString();` |  | Add string as file data
`procedure AddDir();` |  | Add directory to archive
`procedure AddSymbolicLink();` |  | Add a symbolic link to the archive
`procedure AddLink();` |  | Add hard link to archive
`procedure AddVolumeHeader();` |  | Add volume header entry
`procedure Finalize;` |  | Finalize the archive
`property Permissions: TTarPermissions; [rw]` |  | Archive entry permissions
`property UID: Integer; [rw]` |  | Archive entry user ID
`property GID: Integer; [rw]` |  | Archive entry group ID
`property UserName: AnsiString; [rw]` |  | Archive entry user name
`property GroupName: AnsiString; [rw]` |  | Archive entry group name
`property Mode: TTarModes; [rw]` |  | Archive entry mode
`property Magic: AnsiString; [rw]` |  | Archive entry Magic constant
`end;`

## Inheritance

`TTarWriter` |  | Class to write tar archives
`TObject`

## Description

TTarWriter can be used to create .tar archives. It can be created using a filename, in which case the archive will be written to the filename, or it can be created using a stream, in which case the archive will be written to the stream - for instance a compression stream.

## See also

TTarArchive |  | Class to examine and read tar archives