Объединение файлов с помощью Node.js через C++

Введение

Aspose.Cells предоставляет различные способы объединения файлов. Для простых файлов с данными, форматированием и формулами можно использовать метод Workbook.combine(Workbook) для объединения нескольких книг, а метод Worksheet.copy(Worksheet) — для копирования листов в новую книгу. Эти методы просты в использовании и эффективны, но при большом количестве файлов их использование может потреблять много ресурсов системы. Чтобы этого избежать, используйте статический метод **CellsHelper.mergeFiles(string[], string, string)**, более эффективный способ объединения нескольких файлов.

Объединение файлов с помощью Aspose.Cells for Node.js via C++

Следующий пример показывает, как объединять большие файлы, используя метод **CellsHelper.mergeFiles(string[], string, string)**. Он берет два простых, но больших файла, Book1.xls и Book2.xls. Эти файлы содержат отформатированные данные и формулы.

const path = require("path");
const AsposeCells = require("aspose.cells.node");

// The path to the documents directory.
const dataDir = path.join(__dirname, "data");

// Create an Array (length=2)
const files = new Array(2);
// Specify files with their paths to be merged
files[0] = path.join(dataDir, "book1.xls");
files[1] = path.join(dataDir, "Book2.xlsx");

// Create a cachedFile for the process
const cacheFile = path.join(dataDir, "test.txt");

// Output File to be created
const dest = path.join(dataDir, "output.xlsx");

// Merge the files in the output file. Supports only .xls files
AsposeCells.CellsHelper.mergeFiles(files, cacheFile, dest);
console.log(cacheFile);
// Now if you need to rename your sheets, you may load the output file
const workbook = new AsposeCells.Workbook(path.join(dataDir, "output.xlsx"));

let i = 1;

// Browse all the sheets to rename them accordingly
const worksheets = workbook.getWorksheets();
for (let j = 0; j < worksheets.getCount(); j++) {
worksheets.get(j).setName(`Sheet1${i}`);
i++;
}

// Re-save the file
workbook.save(path.join(dataDir, "output.xlsx"));