ZArchive

Inheritance: java.lang.Object

All Implemented Interfaces: com.aspose.zip.IArchiveFileEntry, com.aspose.zip.IArchive, java.lang.AutoCloseable

public class ZArchive implements IArchiveFileEntry, IArchive, AutoCloseable

This class represents a Z (compress) archive file. Use it to compose or extract Z archives.

See Z Compressed File Format

Constructors

ConstructorDescription
ZArchive()Initializes a new instance of the ZArchive class prepared for compressing.
ZArchive(InputStream source)Initializes a new instance of the ZArchive class prepared for decompressing.
ZArchive(InputStream source, ZArchiveLoadOptions loadOptions)Initializes a new instance of the ZArchive class prepared for decompressing.
ZArchive(String path)Initializes a new instance of the ZArchive class prepared for decompressing.
ZArchive(String path, ZArchiveLoadOptions loadOptions)Initializes a new instance of the ZArchive class prepared for decompressing.

Methods

MethodDescription
close(){@inheritDoc}
extract(File file)Extracts Z archive to a file.
extract(OutputStream destination)Extracts Z archive to a stream.
extract(String path)Extracts Z archive to a file by path.
extractToDirectory(String destinationDirectory)Extracts content of the archive to the directory provided.
getFileEntries()Gets entries of IArchiveFileEntry type constituting the Z archive.
getFormat()Gets the archive format.
getLength()Gets the length of the entry in bytes.
getName()Gets the name of the entry within archive.
save(OutputStream output)Saves Z archive to the stream provided.
save(OutputStream output, ZArchiveSaveOptions settings)Saves Z archive to the stream provided.
save(String destinationFileName)Saves Z archive to the destination file provided.
save(String destinationFileName, ZArchiveSaveOptions settings)Saves Z archive to the destination file provided.
setSource(File file)Sets the content to be compressed within the archive.
setSource(InputStream source)Sets the content to be compressed within the archive.
setSource(String sourcePath)Sets the content to be compressed within the archive.

ZArchive()

public ZArchive()

Initializes a new instance of the ZArchive class prepared for compressing.

ZArchive(InputStream source)

public ZArchive(InputStream source)

Initializes a new instance of the ZArchive class prepared for decompressing.

This constructor does not decompress. See extract(OutputStream) method for decompressing.

Parameters:

ParameterTypeDescription
sourcejava.io.InputStreamthe source of the archive

ZArchive(InputStream source, ZArchiveLoadOptions loadOptions)

public ZArchive(InputStream source, ZArchiveLoadOptions loadOptions)

Initializes a new instance of the ZArchive class prepared for decompressing.

This constructor does not decompress. See extract(OutputStream) method for decompressing.

Parameters:

ParameterTypeDescription
sourcejava.io.InputStreamthe source of the archive
loadOptionsZArchiveLoadOptionsthe options to load archive with

ZArchive(String path)

public ZArchive(String path)

Initializes a new instance of the ZArchive class prepared for decompressing.

This constructor does not decompress. See extract(String) method for decompressing.

Parameters:

ParameterTypeDescription
pathjava.lang.Stringthe path to the source of the archive

ZArchive(String path, ZArchiveLoadOptions loadOptions)

public ZArchive(String path, ZArchiveLoadOptions loadOptions)

Initializes a new instance of the ZArchive class prepared for decompressing.

This constructor does not decompress. See extract(String) method for decompressing.

Parameters:

ParameterTypeDescription
pathjava.lang.Stringthe path to the source of the archive
loadOptionsZArchiveLoadOptionsthe options to load archive with

close()

public void close()

extract(File file)

public final void extract(File file)

Extracts Z archive to a file.

 try (FileInputStream zFile = new FileInputStream("sourceFileName")) {
     try (ZArchive archive = new ZArchive(zFile)) {
         archive.extract(new File("extracted.bin"));
     }
 } catch (IOException ex) {
 }



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| file | java.io.File | the file for storing decompressed data |

### extract(OutputStream destination) {#extract-java.io.OutputStream-}

public final void extract(OutputStream destination)



Extracts Z archive to a stream.

     try (FileInputStream zFile = new FileInputStream("sourceFileName")) {
         try (FileOutputStream extractedFile = new FileOutputStream("extractedFileName")) {
             try (ZArchive archive = new ZArchive(zFile)) {
                 archive.extract(extractedFile);
             }
         }
     } catch (IOException ex) {
     }
 
```



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| destination | java.io.OutputStream | the stream for storing decompressed data |

### extract(String path) {#extract-java.lang.String-}
```
public final File extract(String path)
```


Extracts Z archive to a file by path.

```
 try (FileInputStream zFile = new FileInputStream("sourceFileName")) {
     try (ZArchive archive = new ZArchive(zFile)) {
         archive.extract("extracted.bin");
     }
 } catch (IOException ex) {
 }



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| path | java.lang.String | the path to file which will store decompressed data |

**Returns:**
java.io.File - the file info of the extracted file
### extractToDirectory(String destinationDirectory) {#extractToDirectory-java.lang.String-}

public final void extractToDirectory(String destinationDirectory)



Extracts content of the archive to the directory provided.

**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| destinationDirectory | java.lang.String | the path to the directory to place the extracted files in

If the directory does not exist, it will be created. |

### getFileEntries() {#getFileEntries--}

public final Iterable getFileEntries()



Gets entries of [IArchiveFileEntry](../../com.aspose.zip/iarchivefileentry) type constituting the Z archive.

**Returns:**
java.lang.Iterable<com.aspose.zip.IArchiveFileEntry> - entries of [IArchiveFileEntry](../../com.aspose.zip/iarchivefileentry) type constituting the Z archive
### getFormat() {#getFormat--}

public final ArchiveFormat getFormat()



Gets the archive format.

**Returns:**
[ArchiveFormat](../../com.aspose.zip/archiveformat) - the archive format
### getLength() {#getLength--}

public final Long getLength()



Gets the length of the entry in bytes.

**Returns:**
java.lang.Long - the length of the entry in bytes
### getName() {#getName--}

public final String getName()



Gets the name of the entry within archive.

**Returns:**
java.lang.String - the name of the entry within archive
### save(OutputStream output) {#save-java.io.OutputStream-}

public final void save(OutputStream output)



Saves Z archive to the stream provided.

     try (FileOutputStream zFile = new FileOutputStream("data.bin.Z")) {
         try (ZArchive archive = new ZArchive()) {
             archive.setSource("data.bin");
             archive.save(zFile);
         }
     } catch (IOException ex) {
     }
 
```



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| output | java.io.OutputStream | the destination stream |

### save(OutputStream output, ZArchiveSaveOptions settings) {#save-java.io.OutputStream-com.aspose.zip.ZArchiveSaveOptions-}
```
public final void save(OutputStream output, ZArchiveSaveOptions settings)
```


Saves Z archive to the stream provided.

```
 try (FileOutputStream zFile = new FileOutputStream("data.bin.Z")) {
     try (ZArchive archive = new ZArchive()) {
         archive.setSource("data.bin");
         archive.save(zFile);
     }
 } catch (IOException ex) {
 }



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| output | java.io.OutputStream | the destination stream |
| settings | [ZArchiveSaveOptions](../../com.aspose.zip/zarchivesaveoptions) | the settings for archive composition |

### save(String destinationFileName) {#save-java.lang.String-}

public final void save(String destinationFileName)



Saves Z archive to the destination file provided.

     try (ZArchive archive = new ZArchive()) {
         archive.setSource(new File("data.bin"));
         archive.save("data.bin.Z");
     }
 
```



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| destinationFileName | java.lang.String | the path of the archive to be created. If the specified file name points to an existing file, it will be overwritten |

### save(String destinationFileName, ZArchiveSaveOptions settings) {#save-java.lang.String-com.aspose.zip.ZArchiveSaveOptions-}
```
public final void save(String destinationFileName, ZArchiveSaveOptions settings)
```


Saves Z archive to the destination file provided.

```
 try (ZArchive archive = new ZArchive()) {
     archive.setSource(new File("data.bin"));
     archive.save("data.bin.Z");
 }



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| destinationFileName | java.lang.String | the path of the archive to be created. If the specified file name points to an existing file, it will be overwritten |
| settings | [ZArchiveSaveOptions](../../com.aspose.zip/zarchivesaveoptions) | the settings for archive composition |

### setSource(File file) {#setSource-java.io.File-}

public final void setSource(File file)



Sets the content to be compressed within the archive.

     try (ZArchive archive = new ZArchive()) {
         archive.setSource(new File("data.bin"));
         archive.save("data.bin.Z");
     }
 
```



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| file | java.io.File | the file info which will be opened as input stream |

### setSource(InputStream source) {#setSource-java.io.InputStream-}
```
public final void setSource(InputStream source)
```


Sets the content to be compressed within the archive.

```
 try (ZArchive archive = new ZArchive()) {
     archive.setSource(new ByteArrayInputStream(new byte[] {
             0x00,
             (byte) 0xFF
     }));
     archive.save("archive.Z");
 }



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| source | java.io.InputStream | the input stream for the archive |

### setSource(String sourcePath) {#setSource-java.lang.String-}

public final void setSource(String sourcePath)



Sets the content to be compressed within the archive.

     try (ZArchive archive = new ZArchive()) {
         archive.setSource("data.bin");
         archive.save("data.bin.Z");
     }
 
```



**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| sourcePath | java.lang.String | the path to the file which will be opened as input stream |