Dateien zusammenführen
Einführung
Aspose.Cells bietet verschiedene Möglichkeiten zum Zusammenführen von Dateien. Für einfache Dateien mit Daten, Formatierungen und Formeln kann die Methode Workbook.combine() verwendet werden, um mehrere Arbeitsmappen zu kombinieren, und die Methode Worksheet.copy() zum Kopieren von Arbeitsblättern in eine neue Arbeitsmappe. Diese Methoden sind einfach zu verwenden und effektiv, aber wenn Sie viele Dateien zusammenführen möchten, kann es sein, dass sie viele Systemressourcen beanspruchen. Um dies zu vermeiden, verwenden Sie die statische Methode CellsHelper.mergeFiles, eine effizientere Möglichkeit, mehrere Dateien zusammenzuführen.
Dateien mit Aspose.Cells zusammenführen
Der folgende Beispielcode veranschaulicht, wie große Dateien mithilfe der Methode CellsHelper.mergeFiles zusammengeführt werden. Es handelt sich um zwei einfache, aber große Dateien: MyBook1.xls und MyBook2.xls. Die Dateien enthalten nur formatierte Daten und Formeln.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getSharedDataDir(MergeFiles.class) + "CellsHelperClass/"; | |
// Create an Array (length=2) | |
String[] files = new String[2]; | |
// Specify files with their paths to be merged | |
files[0] = dataDir + "Book1.xls"; | |
files[1] = dataDir + "Book2.xls"; | |
// Create a cachedFile for the process | |
String cacheFile = dataDir + "test.txt"; | |
// Output File to be created | |
String dest = dataDir + "MergeFiles_out.xls"; | |
// Merge the files in the output file | |
CellsHelper.mergeFiles(files, cacheFile, dest); | |
// Now if you need to rename your sheets, you may load the output file | |
Workbook workbook = new Workbook(dataDir + "MergeFiles_out.xls"); | |
int cnt = 1; | |
// Browse all the sheets to rename them accordingly | |
for (int i = 0; i < workbook.getWorksheets().getCount(); i++) { | |
workbook.getWorksheets().get(i).setName("Sheet1" + cnt); | |
cnt++; | |
} | |
// Re-save the file | |
workbook.save(dataDir + "MergeFiles1_out.xls"); |