Skip to main content
Deno 2 is finally here 🎉️
Learn more
Module

x/zipjs/index.js>ZipWriter

JavaScript library to zip and unzip files supporting multi-core compression, compression streams, zip64, split files and encryption.
Go to Latest
class ZipWriter
import { ZipWriter } from "https://deno.land/x/zipjs@v2.7.23/index.js";

Represents an instance used to create a zip file.

Examples

Here is an example showing how to create a zip file containing a compressed text file:

// use a BlobWriter to store with a ZipWriter the zip into a Blob object
const blobWriter = new zip.BlobWriter("application/zip");
const writer = new zip.ZipWriter(blobWriter);

// use a TextReader to read the String to add
await writer.add("filename.txt", new zip.TextReader("test!"));

// close the ZipReader
await writer.close();

// get the zip file as a Blob
const blob = await blobWriter.getData();

Constructors

new
ZipWriter(writer:
| WritableWriter
| AsyncGenerator<Writer<unknown> | WritableWriter | WritableStream, boolean>
, options?: ZipWriterConstructorOptions
)

Creates the ZipWriter instance

Properties

readonly
optional
hasCorruptedEntries: boolean

true if the zip contains at least one entry that has been partially written.

Methods

add<ReaderType>(
filename: string,
reader?:
| Reader<ReaderType>
| ReadableReader
| Reader<unknown>[]
| ReadableReader[]
,
options?: ZipWriterAddDataOptions,
): Promise<EntryMetaData>

Adds an entry into the zip file

close(comment?: Uint8Array, options?: ZipWriterCloseOptions): Promise<Type>

Writes the entries directory, writes the global comment, and returns the content of the zip file