• Giới thiệu
  • Bảo mật và Quyền riêng tư
  • Liên hệ
Wednesday, October 4, 2023
Thế giới JS & VPS
  • Trang chủ
  • Thế Giới Javascript
    • Full tài liệu học JS Free từ A-Z
    • Học javascript miễn phí
    • Javascript
    • News and Tutorial JS
    • ReactJS
    • Tips vs Tricks JS
    • VueJS
    • NodeJS
  • Thế giới VPS
    • VPS for Developer
  • Top IT
No Result
View All Result
  • Trang chủ
  • Thế Giới Javascript
    • Full tài liệu học JS Free từ A-Z
    • Học javascript miễn phí
    • Javascript
    • News and Tutorial JS
    • ReactJS
    • Tips vs Tricks JS
    • VueJS
    • NodeJS
  • Thế giới VPS
    • VPS for Developer
  • Top IT
No Result
View All Result
Thế giới JS & VPS
No Result
View All Result
Home Thế Giới Javascript Javascript

Node-Archiver: Giao diện Luồng cho Việc Tạo File Nén

by Joker
September 19, 2023
in Javascript, Thế Giới Javascript
0
0
SHARES
0
VIEWS
Share on FacebookShare on TwitterShare on Pin

Nội dung chính

  • Archiver
  • Cài đặt
  • Bắt đầu Nhanh
  • Định dạng
  • Chi tiết Tải về:

Archiver

Một giao diện luồng cho việc tạo file nén

Cài đặt

npm install archiver --save

Bắt đầu Nhanh

// require modules
const fs = require('fs');
const archiver = require('archiver');

// create a file to stream archive data to.
const output = fs.createWriteStream(__dirname + '/example.zip');
const archive = archiver('zip', {
  zlib: { level: 9 } // Sets the compression level.
});

// listen for all archive data to be written
// 'close' event is fired only when a file descriptor is involved
output.on('close', function() {
  console.log(archive.pointer() + ' total bytes');
  console.log('archiver has been finalized and the output file descriptor has closed.');
});

// This event is fired when the data source is drained no matter what was the data source.
// It is not part of this library but rather from the NodeJS Stream API.
// @see: https://nodejs.org/api/stream.html#stream_event_end
output.on('end', function() {
  console.log('Data has been drained');
});

// good practice to catch warnings (ie stat failures and other non-blocking errors)
archive.on('warning', function(err) {
  if (err.code === 'ENOENT') {
    // log warning
  } else {
    // throw error
    throw err;
  }
});

// good practice to catch this error explicitly
archive.on('error', function(err) {
  throw err;
});

// pipe archive data to the file
archive.pipe(output);

// append a file from stream
const file1 = __dirname + '/file1.txt';
archive.append(fs.createReadStream(file1), { name: 'file1.txt' });

// append a file from string
archive.append('string cheese!', { name: 'file2.txt' });

// append a file from buffer
const buffer3 = Buffer.from('buff it!');
archive.append(buffer3, { name: 'file3.txt' });

// append a file
archive.file('file1.txt', { name: 'file4.txt' });

// append files from a sub-directory and naming it `new-subdir` within the archive
archive.directory('subdir/', 'new-subdir');

// append files from a sub-directory, putting its contents at the root of archive
archive.directory('subdir/', false);

// append files from a glob pattern
archive.glob('file*.txt', {cwd:__dirname});

// finalize the archive (ie we are done appending files but streams have to finish yet)
// 'close', 'end' or 'finish' may be fired right after calling this method so register to them beforehand
archive.finalize();

Định dạng

Archiver đi kèm với hỗ trợ sẵn cho các định dạng file TAR và ZIP.

Bạn có thể đăng ký các định dạng bổ sung bằng cách sử dụng registerFormat.

Bạn có thể kiểm tra xem định dạng đã tồn tại trước khi đăng ký định dạng mới bằng cách sử dụng isRegisteredFormat.

Các định dạng sẽ thay đổi trong tương lai để thực hiện phương pháp trung gian.


Truy cập API documentation để xem danh sách tất cả các phương thức có sẵn.


Chi tiết Tải về:

Tác giả: Archiverjs
Mã nguồn: https://github.com/archiverjs/node-archiver
Giấy phép: MIT license

Cảm ơn bạn!

Tags: javascriptnodenodejs
Previous Post

Http-proxy-middleware: Cách đơn giản nhất để Proxy các Yêu cầu HTTP trong Node

Next Post

React Native Scaling Drawer: Thêm Một Tủ Đựng Tích Hợp Co To React Native Của Bạn

Next Post

React Native Scaling Drawer: Thêm Một Tủ Đựng Tích Hợp Co To React Native Của Bạn

  • Trending
  • Comments
  • Latest
Học javascript miễn phí | Giới thiệu về toàn tập về JavaScript là gì một cách đơn giản nhất

Học javascript miễn phí | Tìm hiểu cực chi tiết và dễ hiểu về đối tượng(Objects) trong JavaScript

July 2, 2023
Học javascript miễn phí | Giới thiệu về toàn tập về JavaScript là gì một cách đơn giản nhất

Học javascript miễn phí | Tìm hiểu cực chi tiết và dễ hiểu về Hàm(function) trong JavaScript

June 28, 2023
Học javascript miễn phí | Giới thiệu về toàn tập về JavaScript là gì một cách đơn giản nhất

Học javascript miễn phí | Tìm hiểu cực chi tiết và dễ hiểu về Toán tử số học và ví dụ trong JavaScript

July 4, 2023
Học javascript miễn phí | Giới thiệu về toàn tập về JavaScript là gì một cách đơn giản nhất

Học javascript miễn phí | Tìm hiểu cực chi tiết và dễ hiểu về hàm mũi tên là gì và làm thế nào để tạo ra nó? trong JavaScript

July 6, 2023
Top IT | Top 5 xu hướng DevOps đang thịnh hành hiện nay mà các developer nên biết

Top IT | Top 5 xu hướng DevOps đang thịnh hành hiện nay mà các developer nên biết

0
TopIT | Chọn Python để phát triển web – Top 16 ưu và nhược điểm hàng đầu bạn cần biết

TopIT | Chọn Python để phát triển web – Top 16 ưu và nhược điểm hàng đầu bạn cần biết

0
TopIT | Top 16 thư viện React mà các developer nên biết

TopIT | Top 16 thư viện React mà các developer nên biết

0
TopIT | Top 17 ứng dụng web cực hay developer nên sử dụng để tăng năng suất

TopIT | Top 17 ứng dụng web cực hay developer nên sử dụng để tăng năng suất

0

Lấy Giá Trị Hàng Được Chọn Trong Bảng HTML bằng jQuery

October 2, 2023

Thêm Các Nút FAB Tuỳ Chỉnh và Thiết Kế Vật Liệu vào Ứng Dụng React Native của Bạn

October 2, 2023

Cách Tạo Một Đồng Hồ Bấm Đơn Giản bằng JavaScript

October 2, 2023

Rebass: Các thành phần giao diện người dùng nguyên thủy React được xây dựng với Styled-system

October 2, 2023

Recent News

Lấy Giá Trị Hàng Được Chọn Trong Bảng HTML bằng jQuery

October 2, 2023

Thêm Các Nút FAB Tuỳ Chỉnh và Thiết Kế Vật Liệu vào Ứng Dụng React Native của Bạn

October 2, 2023

Cách Tạo Một Đồng Hồ Bấm Đơn Giản bằng JavaScript

October 2, 2023

Rebass: Các thành phần giao diện người dùng nguyên thủy React được xây dựng với Styled-system

October 2, 2023

Thế giới Javascript vs VPS

We bring you the best News, Tutorial, Tips.v..v about Javascript language and VPS that perfect for developer full stack, Web, Backend, Newbie...to learn.

Follow Us

Top trending

  • Học javascript miễn phí
  • Javascript
  • Lập trình web
  • News and Tutorial JS
  • Thế Giới Javascript
  • Tip vs Tricks HTML/CSS
  • Tips vs Tricks JS
  • Top IT

Bài đang hot

Lấy Giá Trị Hàng Được Chọn Trong Bảng HTML bằng jQuery

October 2, 2023

Thêm Các Nút FAB Tuỳ Chỉnh và Thiết Kế Vật Liệu vào Ứng Dụng React Native của Bạn

October 2, 2023
  • Giới thiệu
  • Bảo mật và Quyền riêng tư
  • Liên hệ

© 2020 VPSUS - Share everything about Javascript and VPS by JSTEAM.

No Result
View All Result
  • Thế Giới Javascript
    • Học javascript miễn phí
    • Javascript
    • News and Tutorial JS
    • ReactJS
    • Tips vs Tricks JS
  • Thế giới VPS
    • VPS for Developer
  • Top IT

© 2020 VPSUS - Share everything about Javascript and VPS by JSTEAM.