Беспокоитесь об объединении или разделении документов различных типов на нескольких платформах? В вашем уме может быть много утверждений:

  • Как объединить PDF-документы в Java?
  • Хотите разделить текстовые документы или объединить электронные таблицы Excel.
  • Что делать, если мне нужно объединить презентации PPT/PPTX.
  • Еще много вопросов, список может не заканчиваться.
Разделить или объединить документы PDF, Word, Excel в Java
GroupDocs.Merger for Java

GroupDocs предоставляет решение для слияния документов для всех таких требований. Его Java API позволяет вам объединять документы и управлять структурой документов на Java в широком диапазоне поддерживаемых форматов документов. Кроме того, он позволяет манипулировать страницами документа, преобразовывать страницы, извлекать информацию из документов, создавать предварительный просмотр и многое другое.

В этой статье мы немного рассмотрим следующие темы:

Пример кода и действия, описанные ниже, используют GroupDocs.Merger for Java, поэтому вы можете скачать или интегрировать его в свои приложения на основе maven с конфигурациями pom.xml.

Объединение PDF-файлов в Java

Мы можем объединить два или более PDF-файла всего в несколько строк кода. Ниже приведен фрагмент кода из примеров, который говорит сам за себя и не требует дополнительных пояснений, поэтому показывает, как объединить несколько PDF-документов в Java. Шаги очень просты, если вы приняли решение объединить документы:

  • Создать объект Merger с первым документом, с которым должны быть объединены другие документы.
  • Вызвать метод join, передав документ для слияния.
  • Вспомните метод соединения, чтобы объединить больше документов.
  • Вызовите метод save, чтобы сохранить окончательный результат.
  • Вот и все.
// Set paths for the documents to join together in a single file.
String filePath1 = "document-1.pdf";
String filePath2 = "document-2.pdf";
String filePath3 = "document-3.pdf";
// Merger multiple PDF documents into a single PDF file.
Merger merger = new Merger(filePath1 );
merger.join(filePath2 ); // Joining 2nd Document
merger.join(filePath3 ); // Joining 3rd Document
// Save the merged document.
String filePathOutput = "mergedDocument.pdf";
merger.save(filePathOutput);

Объединение документов Excel, Word, PowerPoint в Java

Вы можете комбинировать несколько документов Word, электронных таблиц Excel, презентаций PowerPoint, практически любых документов одного формата. Приведенный выше код объединения документов PDF можно использовать для объединения самых разных документов. Внизу статьи я упомяну список форматов файлов, которые можно объединить с одним и тем же кодом. Здесь для примера я показываю, как аналогичным образом можно объединить более двух документов Word в один файл Word всего за несколько строк кода Java.

// Merger multiple Word documents into a single DOCX file.
Merger merger = new Merger("document1.docx" );
merger.join("document2.docx" ); // Joining 2nd Document
merger.join("document3.docx" ); // Joining 3rd Document
// Save the merged document.
merger.save("mergedDocument.pdf");

Объединение страниц документов в Java

Несколько документов можно объединить, выбрав отдельные страницы, а также указав нужный диапазон страниц. Ваш код останется таким же, как упомянутый выше, с небольшими изменениями при настройке параметров слияния с помощью класса JoinOptions.

Ниже приведен фрагмент исходного кода, который показывает, как объединить документы, указав определенные страницы.

// Set the start and end page number in JoinOptions class.
JoinOptions joinOptions = new JoinOptions(1, 2);
// Merge two files with selective pages using join method.
Merger merger = new Merger("document-1.docx");
merger.join("document-2.docx" , joinOptions);
merger.save("merged-Document.docx");

Разделить документы на несколько документов в Java

Точно так же, как мы объединили документы выше, мы также можем быстро разделить документы Word, электронные таблицы Excel, презентации, файлы PDF и многие другие документы разными способами.

  • Разделить по точным номерам страниц
  • Разделить документ на несколько многостраничных документов
  • Разделить по диапазону страниц
  • Разделение на четные и нечетные страницы

Разделить по точным номерам страниц

Мы можем разделить документ, указав точное количество страниц в Java. Следующий код разделит файл PDF на 3 документа, каждый из которых будет иметь указанную единственную страницу.

  • Инициализируйте объект SplitOptions с выходным файлом и режимом разделения.
  • Создайте объект Merger с исходным файлом или потоком для разделения.
  • Вызовите метод split, чтобы разделить предоставленный документ и сохранить его.
String filePath = "document.pdf";
String filePathOut = "document\_{0}.{1}";
// Split the document into multiple single page documents.
SplitOptions splitOptions = new SplitOptions(filePathOut, new int\[\] { 3, 6, 8 });
Merger merger = new Merger(filePath);
merger.split(splitOptions);

Разделить документ на многостраничные документы

Если у вас есть документ с 6 страницами, указанная ниже небольшая модификация в приведенном выше коде разделит ваш документ на 3 отдельных документа следующим образом:

Имя документа Номера страниц
документ_1 1, 2
документ_2 3, 4, 5
документ_3 6
SplitOptions splitOptions = new SplitOptions(filePathOut,  SplitMode.Interval, new int\[\] { 3, 6 },);

Разделить по диапазону начальной и конечной страниц

Если вы хотите разделить любой документ, просто указав диапазон страниц, вот как презентацию Powerpoint можно разделить на 3 одностраничных презентации.

String filePath = "presentation.ppt";
String filePathOut = "presentation\_{0}.{1}";
// Split the presentation into multiple single page presentations.
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 5);
Merger merger = new Merger(filePath);
merger.split(splitOptions)

Разделить по четным или нечетным диапазонам страниц

Вы можете установить разделение четных и нечетных диапазонов страниц. Использование SplitOptions позволит разделить предоставленный документ на несколько одностраничных документов для нечетных страниц в диапазоне от 3 до 8.

SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 8, RangeMode.OddPages);

Поддерживаемые форматы документов

Как и было обещано, вот список форматов документов, которые можно объединить или разделить с приведенными выше примерами. Вы можете посетить docs в любое время, чтобы проверить обновленный список.

Тип документа Форматы файлов
Обработка текстов DOC, DOCX, DOCM, DOT, DOTX, DOTM, ODT, OTT, RTF, TXT
Таблицы XLS, XLSX, XLSM, XLSB, XLT, XLTX, XLTM, ODS, CSV, TSV
Презентации PPT, PPTX, PPS, PPSX, ODP, OTP
Чертежи VSDX, VSDM, VSSX, VSSM, VSTX, VSTM, VDX, VSX, VTX
Интернет HTML, МHT
Страница Описание Языки ТЕX, XPS
электронные книги и прочее PDF, EPUB, ONE

Рад видеть вас здесь, вы можете свободно связаться с нами на форуме, если у вас возникнут какие-либо трудности или возникнет путаница или вы захотите дать несколько хороших предложений.