Zlip es un módulo utilizado en Node.js para comprimir o descomprimir un archivo. Compresión significa comprimir el archivo y descompresión significa descomprimir el archivo. Es un módulo Node.js preconstruido, por lo que no es necesario instalarlo como una dependencia.
Sintaxis:
const zlib = require('zlib');
Compresión de un archivo (Zipping):
Enfoque: Vamos a utilizar el método createGzip() del módulo Zlib para crear un archivo zip o un archivo comprimido a partir del archivo existente. Luego vamos a canalizar el método con el archivo que queremos comprimir mientras creamos un archivo de salida como resultado del método createGzip() .
Configuración del proyecto:
Paso 1: cree y abra una carpeta de proyecto dentro de un editor de código.
Paso 2: Ubique la carpeta del proyecto dentro de la terminal.
Paso 3: cree archivos app.js e input.txt manualmente o escribiendo el comando
touch app.js input.txt
dentro de input.txt, asegúrese de haber escrito algún texto para que cuando lo comprimamos y luego lo descomprimamos, verifiquemos la salida.
Paso 4: Abra el archivo app.js dentro del editor de código.
Escritura de código:
Paso 6: requiere el módulo zlib
const zlib = require('zlib');
Paso 7: Requerir módulo fs
const fs = require('fs');
este módulo nos ayuda a crear transmisiones legibles y escriturables.
Paso 8: Cree una transmisión legible
const inputFile = fs.createReadStream('input.txt');
para que nuestro sistema pueda leer el archivo de entrada.
Paso 9: Cree una transmisión grabable
const outputFile = fs.createWriteStream('input.txt.gz');
para que nuestro sistema pueda crear un archivo de salida.
Paso 10: canalice el método createGzip() con el archivo que queremos comprimir mientras creamos un archivo de salida como resultado del método createGzip() .
inputFile.pipe(zlib.createGzip()).pipe(outputFile);
Ejemplo: Vamos a comprimir un archivo usando el módulo Zlip .
Javascript
const zlib = require('zlib'); const fs = require('fs'); const inputFile = fs.createReadStream('input.txt'); const outputFile = fs.createWriteStream('input.txt.gz'); inputFile.pipe(zlib.createGzip()).pipe(outputFile);
Pasos para ejecutar la aplicación: Dentro de la terminal, escriba el comando para ejecutar su script.
node app.js
Producción:
Descompresión de un archivo (Unzipping):
Enfoque: Ahora, el archivo que creamos en el Ejemplo 1 , vamos a descomprimirlo o descomprimirlo usando el método createUnzip() del módulo Zlib .
Configuración del proyecto:
Paso 1: cree y abra una carpeta de proyecto dentro de un editor de código.
Paso 2: Ubique la carpeta del proyecto dentro de la terminal.
Paso 3: cree archivos app.js manualmente o escribiendo el comando
touch app.js
Paso 4: asegúrese de que desea un archivo descomprimido dentro de su directorio de trabajo actual que desea descomprimir. En nuestro caso, consideramos el archivo que comprimimos en el Ejemplo 1 para que podamos verificar el resultado de salida.
Paso 5: Abra el archivo app.js dentro del editor de código.
Escritura de código:
Paso 6 : requiere el módulo zlib
const zlib = require('zlib');
Paso 7: Requerir módulo fs
const fs = require('fs');
este módulo nos ayuda a crear transmisiones legibles y escriturables.
Paso 8: Cree una transmisión legible
const inputFile = fs.createReadStream('input.txt.gz');
para que nuestro sistema pueda leer el archivo de entrada.
Paso 9: Cree una transmisión grabable
const outputFile = fs.createWriteStream('input2.txt');
para que nuestro sistema pueda crear un archivo de salida.
Paso 10: canalice el método createUnzip() con el archivo que queremos descomprimir mientras creamos un archivo de salida como resultado del método createUnzip().
inputFile.pipe(zlib.createUnzip()).pipe(outputFile);
Ejemplo: Vamos a descomprimir un archivo usando el módulo Zlip.
Javascript
const zlib = require('zlib'); const fs = require('fs'); const inputFile = fs.createReadStream('input.txt.gz'); const outputFile = fs.createWriteStream('input2.txt'); inputFile.pipe(zlib.createUnzip()).pipe(outputFile);
Pasos para ejecutar la aplicación: Dentro de la terminal, escriba el comando para ejecutar su script.
node app.js
Producción: