> For the complete documentation index, see [llms.txt](https://golua.fatality.win/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://golua.fatality.win/documentation/datatypes/zip.md).

# zip

zip datatype

## Functions

### read

```lua
zip_object:read("folder/file.txt")
```

|                                              |                                             |                                                |
| :------------------------------------------: | :-----------------------------------------: | :--------------------------------------------: |
| [Parameter](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) | [Description](/documentation/datatypes/zip.md) |
|                     path                     |                    string                   |                  path to file                  |

#### Returns:

|                                          |                                             |
| :--------------------------------------: | :-----------------------------------------: |
| [Value](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) |
|                 contents                 |                    string                   |

### read\_stream

```lua
zip_object:read_stream("folder/file.txt")
```

|                                              |                                             |                                                |
| :------------------------------------------: | :-----------------------------------------: | :--------------------------------------------: |
| [Parameter](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) | [Description](/documentation/datatypes/zip.md) |
|                     path                     |                    string                   |                  path to file                  |

#### Returns:

|                                          |                                             |
| :--------------------------------------: | :-----------------------------------------: |
| [Value](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) |
|                file stream               |                table of char                |

### write

```lua
zip_object:write("folder/file.txt", "data")
```

|                                              |                                             |                                                |
| :------------------------------------------: | :-----------------------------------------: | :--------------------------------------------: |
| [Parameter](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) | [Description](/documentation/datatypes/zip.md) |
|                     path                     |                    string                   |                  path to file                  |
|                     data                     |                    string                   |            content to write to file            |

### write\_stream

```lua
zip_object:write_stream("folder/file.txt", {"a", "b", "c"})
```

|                                              |                                             |                                                |
| :------------------------------------------: | :-----------------------------------------: | :--------------------------------------------: |
| [Parameter](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) | [Description](/documentation/datatypes/zip.md) |
|                     path                     |                    string                   |                  path to file                  |
|                     data                     |                table of char                |                 stream to write                |

### save

```lua
zip_object:save()
```

{% hint style="info" %}
Saves the file's content
{% endhint %}

### get\_files

```lua
zip_object:get_files()
```

#### Returns:

|                                          |                                             |
| :--------------------------------------: | :-----------------------------------------: |
| [Value](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) |
|                   files                  |                    table                    |

### exists

```lua
zip_object:exists("folder/file.txt")
```

|                                              |                                             |                                                |
| :------------------------------------------: | :-----------------------------------------: | :--------------------------------------------: |
| [Parameter](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) | [Description](/documentation/datatypes/zip.md) |
|                     path                     |                    string                   |                  path to file                  |

#### Returns:

|                                          |                                             |
| :--------------------------------------: | :-----------------------------------------: |
| [Value](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) |
|            true if file exists           |                   boolean                   |

### extract

```lua
zip_object:extract("folder/file.txt", "some_directory")
```

|                                              |                                             |                                                |
| :------------------------------------------: | :-----------------------------------------: | :--------------------------------------------: |
| [Parameter](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) | [Description](/documentation/datatypes/zip.md) |
|                     path                     |                    string                   |                  path to file                  |
|                  destination                 |                    string                   |          directory to extract file to          |

### extract\_all

```lua
zip_object:extract_all("some_directory")
```

|                                              |                                             |                                                |
| :------------------------------------------: | :-----------------------------------------: | :--------------------------------------------: |
| [Parameter](/documentation/datatypes/zip.md) | [Datatype](/documentation/datatypes/zip.md) | [Description](/documentation/datatypes/zip.md) |
|                  destination                 |                    string                   |          directory to extract file to          |
