Hợp nhất nhiều tệp Excel thành một bằng API REST trong Node.js

Bạn có thể dễ dàng kết hợp hai hoặc nhiều tệp Excel thành một tệp duy nhất theo chương trình trên đám mây. Bạn có thể cần tạo báo cáo dựa trên dữ liệu có sẵn trong nhiều tệp để bạn có thể hợp nhất chúng thành một tệp duy nhất trong các ứng dụng Node.js của mình. Trong bài viết này, bạn sẽ tìm hiểu cách hợp nhất nhiều tệp Excel thành một tệp bằng API REST trong Node.js.

Các chủ đề sau đây sẽ được đề cập trong bài viết này:

Hợp nhất tệp API REST và SDK Node.js

Để hợp nhất nhiều tệp XLSX, tôi sẽ sử dụng Node.js SDK của GroupDocs.Merger Cloud API. Nó cho phép bạn kết hợp, tách, xóa và sắp xếp lại một trang hoặc một tập hợp các trang từ các định dạng tài liệu được hỗ trợ như Word, Excel, PowerPoint, bản vẽ Visio, PDF và HTML.

Bạn có thể cài đặt GroupDocs.Merger Cloud cho ứng dụng Node.js của mình bằng lệnh sau trong bảng điều khiển:

npm install groupdocs-merger-cloud

Vui lòng lấy Mã khách hàng và Bí mật của bạn từ bảng điều khiển trước khi làm theo các bước được đề cập. Khi bạn có ID và bí mật của mình, hãy thêm mã như hình bên dưới:

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const configuration = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";

Hợp nhất nhiều tệp Excel bằng API REST trong Node.js

Bạn có thể kết hợp hai hoặc nhiều tệp Excel theo chương trình trên đám mây bằng cách thực hiện theo các bước đơn giản được đề cập bên dưới:

Tải lên tệp Excel

Đầu tiên, tải các tệp Excel lên Đám mây bằng ví dụ mã được cung cấp bên dưới:

// xây dựng FileApi
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
let resourcesFolder = 'C:\\Files\\';

fs.readdir(resourcesFolder, (err, files) => {
  files.forEach(file => {
    // đọc từng tập tin một
    fs.readFile(resourcesFolder + file, (err, fileStream) => {
      // tạo yêu cầu tệp tải lên
      let request = new groupdocs_merger_cloud.UploadFileRequest(file, fileStream, myStorage);
      // cập nhật dử liệu
      fileApi.uploadFile(request)
        .then(function (response) {
          console.log(file + " uploaded: " + response.uploaded.length);
        })
        .catch(function (error) {
          console.log("Error: " + error.message);
        });
    });
  });
});

Do đó, các tệp XLSX đã tải lên sẽ có trong phần tệp trên trang tổng quan của bạn trên đám mây.

Hợp nhất nhiều tệp Excel bằng Node.js

Bạn có thể dễ dàng hợp nhất nhiều tệp Excel thành một tệp theo chương trình bằng cách thực hiện theo các bước được đề cập bên dưới:

  • Tạo một phiên bản của DocumentApi
  • Tạo JoinItem đầu tiên
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem đầu tiên trong FileInfo
  • Tạo JoinItem thứ hai
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem thứ hai trong FileInfo
  • Tạo tùy chọn tham gia
  • Thêm danh sách các mục tham gia đã tạo được phân tách bằng dấu phẩy
  • Đặt đường dẫn tệp đầu ra
  • Tạo JoinRequest với JoinOptions
  • Nhận kết quả bằng cách gọi phương thức join() của DocumentAPI

Đoạn mã sau cho biết cách hợp nhất nhiều tệp Excel bằng API REST trong Node.js.

// khởi tạo api
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

// tạo mục tham gia đầu tiên
let item1 = new groupdocs_merger_cloud.JoinItem();
item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
item1.fileInfo.filePath = "sample1.xlsx";

// tạo mục tham gia thứ hai
let item2 = new groupdocs_merger_cloud.JoinItem();
item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
item2.fileInfo.filePath = "sample2.xlsx";

// tạo tùy chọn tham gia
let options = new groupdocs_merger_cloud.JoinOptions();
options.joinItems = [item1, item2];
options.outputPath = "Output/joined.xlsx";

// tạo yêu cầu tham gia
let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
let result = await documentApi.join(joinRequest);

console.log("Document edited: " + result.path);
Hợp nhất nhiều tệp Excel bằng API REST trong Node.js

Hợp nhất nhiều tệp Excel bằng API REST trong Node.js

Tải xuống tệp đã hợp nhất

Mẫu mã trên sẽ lưu tệp Excel đã hợp nhất trên đám mây. Bạn có thể tải xuống bằng mẫu mã sau:

// khởi tạo api
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);

// tạo yêu cầu tải tập tin
let request = new groupdocs_merger_cloud.DownloadFileRequest("Output/joined.xlsx", myStorage);

// Tải tập tin
let response = await fileApi.downloadFile(request);

// lưu tệp đầu ra trong thư mục làm việc của bạn
fs.writeFile("C:\\Files\\joined.xlsx", response, "binary", function (err) { });
console.log(response);

Hợp nhất các trang tính Excel cụ thể bằng Node.js

Bạn có thể dễ dàng hợp nhất các trang tính Excel cụ thể của nhiều tệp Excel thành một tệp duy nhất theo chương trình bằng cách thực hiện theo các bước được đề cập bên dưới:

  • Tạo một phiên bản của DocumentApi
  • Tạo JoinItem đầu tiên
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem đầu tiên trong FileInfo
  • Tạo JoinItem thứ hai
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem thứ hai trong FileInfo
  • Tạo tùy chọn tham gia
  • Xác định số trang bắt đầu và số trang kết thúc
  • Đặt đường dẫn tệp đầu ra
  • Tạo JoinRequest với JoinOptions
  • Nhận kết quả bằng cách gọi phương thức join() của DocumentAPI

Đoạn mã sau cho biết cách hợp nhất các trang tính Excel cụ thể từ nhiều tệp bằng cách sử dụng API REST trong Node.js.

// khởi tạo api
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

// tạo mục tham gia đầu tiên
let item1 = new groupdocs_merger_cloud.JoinItem();
item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
item1.fileInfo.filePath = "sample1.xlsx";

// tạo mục tham gia thứ hai
let item2 = new groupdocs_merger_cloud.JoinItem();
item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
item2.fileInfo.filePath = "sample2.xlsx";
item2.startPageNumber = 3
item2.endPageNumber = 4

// tạo tùy chọn tham gia
let options = new groupdocs_merger_cloud.JoinOptions();
options.joinItems = [item1, item2];
options.outputPath = "Output/joined.xlsx";

// tạo yêu cầu tham gia
let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
let result = await documentApi.join(joinRequest);

console.log("Document edited: " + result.path);
Hợp nhất các trang tính Excel cụ thể bằng API REST trong Node.js

Hợp nhất các trang tính Excel cụ thể bằng API REST trong Node.js

Thử trực tuyến

Vui lòng dùng thử công cụ hợp nhất XLSX trực tuyến miễn phí sau đây, được phát triển bằng cách sử dụng API ở trên. https://products.groupdocs.app/merger/xlsx

Phần kết luận

Trong bài viết này, bạn đã học cách hợp nhất nhiều tệp Excel trên đám mây. Bạn cũng đã học cách hợp nhất các trang tính Excel cụ thể thành một tệp bằng API REST trong Node.js. Hơn nữa, bạn đã học cách lập trình tải lên các tệp XLSX trên đám mây và sau đó tải xuống tệp đã hợp nhất từ Đám mây. API cũng cho phép bạn sắp xếp lại hoặc thay thế các trang tài liệu, thay đổi hướng trang, quản lý mật khẩu tài liệu và thực hiện các thao tác khác một cách dễ dàng đối với mọi định dạng tệp được hỗ trợ. Nó cũng cung cấp SDK .NET, Java, PHP, Ruby, Android và Python dưới dạng các thành viên gia đình hợp nhất tài liệu của nó cho Cloud API. Bạn có thể tìm hiểu thêm về GroupDocs.Merge Cloud API bằng cách sử dụng tài liệu. Chúng tôi cũng cung cấp phần Tham khảo API cho phép bạn hình dung và tương tác trực tiếp với các API của chúng tôi thông qua trình duyệt. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm