Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >pemasangan fail termampat nodejs
Node.js ialah masa jalan JavaScript sumber terbuka popular yang boleh dijalankan pada pelayan dan menyediakan operasi I/O yang cekap dan keupayaan pelaksanaan kod. Memampatkan fail ialah tugas biasa dalam Node.js, kerana ia mengurangkan saiz fail secara berkesan, meningkatkan kelajuan pemindahan dan mengurangkan kos penyimpanan. Dalam artikel ini, anda akan belajar cara menggunakan fail termampat dalam Node.js dan memasang alat yang diperlukan.
Sebelum memampatkan fail, anda perlu memasang Node.js terlebih dahulu. Versi stabil terkini Node.js boleh dimuat turun dari tapak web rasmi (https://nodejs.org/en/). Proses pemasangan pada asasnya hanya mengikut langkah-langkah.
Node.js menyediakan banyak modul yang boleh digunakan untuk memampatkan fail, yang paling biasa digunakan ialah modul zlib
dan modul gzip
. zlib
Modul ini menyediakan fungsi pemampatan dan penyahmampatan data serta menyokong format pemampatan seperti gzip, deflate dan zlib. Modul gzip
menyediakan fungsi pemampatan dan penyahmampatan Gzip.
Anda boleh menggunakan arahan berikut untuk memasang modul zlib
:
npm install zlib --save
Anda boleh menggunakan arahan berikut untuk memasang modul gzip
:
npm install gzip --save
Berikut ialah contoh penggunaan modul zlib
untuk mampatkan fail:
const fs = require('fs'); const zlib = require('zlib'); // 读取文件 const readStream = fs.createReadStream('myfile.txt'); // 压缩文件 const writeStream = fs.createWriteStream('myfile.txt.gz'); const gzip = zlib.createGzip(); readStream.pipe(gzip).pipe(writeStream); // 压缩完成后进行回调 writeStream.on('finish', () => { console.log('文件已压缩。'); });
Analisis kod:
myfile.txt
fail. myfile.txt.gz
. Pada masa yang sama, cipta objek gzip
untuk memampatkan fail. gzip
melalui paip untuk mampatan, dan kemudian hantar data termampat ke strim yang menulis fail untuk penyimpanan . Berikut ialah contoh penggunaan modul gzip
untuk memampatkan fail:
const fs = require('fs'); const gzip = require('gzip'); // 读取文件 const readStream = fs.createReadStream('myfile.txt'); // 压缩文件 const writeStream = fs.createWriteStream('myfile.txt.gz'); readStream.pipe(gzip()).pipe(writeStream); // 压缩完成后进行回调 writeStream.on('finish', () => { console.log('文件已压缩。'); });
Analisis kod:
myfile.txt
. myfile.txt.gz
. Gunakan fungsi gzip()
untuk mencipta objek gzip
untuk memampatkan fail. gzip
melalui paip untuk mampatan, dan kemudian hantar data termampat ke strim yang menulis fail untuk penyimpanan . Proses menyahmampat fail adalah serupa dengan memampatkan fail, anda hanya perlu menggunakan kaedah penyahmampatan yang sepadan. Berikut ialah contoh menyahmampat zlib
fail termampat:
const fs = require('fs'); const zlib = require('zlib'); // 读取压缩文件 const readStream = fs.createReadStream('myfile.txt.gz'); // 解压文件 const writeStream = fs.createWriteStream('myfile.txt'); const gunzip = zlib.createGunzip(); readStream.pipe(gunzip).pipe(writeStream); // 解压完成后进行回调 writeStream.on('finish', () => { console.log('文件已解压。'); });
Analisis kod:
myfile.txt.gz
kandungan. myfile.txt
. Pada masa yang sama, cipta objek gunzip
untuk menyahmampat fail. gunzip
melalui paip untuk penyahmampatan, dan kemudian hantar data nyahmampat ke strim yang menulis fail untuk disimpan . Dalam Node.js, memampatkan fail ialah ciri yang sangat berguna yang boleh menjadikan fail lebih kecil, lebih cepat untuk dipindahkan dan lebih murah untuk disimpan. Artikel ini memperkenalkan cara menggunakan modul zlib
dan modul gzip
dalam Node.js untuk memampatkan dan menyahmampat fail, serta memasang alatan yang diperlukan. Kod sampel di atas adalah untuk rujukan, dan pembaca boleh mengubah suai dan melaksanakannya mengikut keperluan sebenar.
Atas ialah kandungan terperinci pemasangan fail termampat nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!