Как объединить документы Word на Java

При работе с несколькими документами Word часто возникает необходимость объединить их в один целостный файл. Будь то подборка научных статей, объединение глав рукописи или просто объединение различных отчетов, процесс объединения документов Word позволяет упорядочить работу и создать более организованный и полный конечный документ. В этой статье я расскажу о том, как объединить документ Word на Java с помощью Free Spire.Doc for Java.
Установка файла Free Spire.Doc.jar
Если вы создали
Maven-проект, вы можете легко импортировать jar в свое приложение, используя
следующие конфигурации. Для проектов, не использующих Maven, загрузите jar-файл
по этой
ссылке и добавьте его в качестве зависимости в свое приложение.
Метод
Document.insertTextFromFile(), предоставляемый Free Spire.Doc for Java,
позволяет объединять документы Word, вставляя другие документы целиком в
документ, причем вставленное содержимое начинается с новой страницы. В качестве
примера можно привести следующий фрагмент кода. import com.spire.doc.*; public class merge { public static void main(String[] args) { //Create an object of Document and load a Word document from disk Document document = new Document("C:/Samples/Sample1.docx"); //Insert another Word document entirely to the document document.insertTextFromFile("C:/Samples/Sample2.docx", FileFormat.Docx_2013); //Save the result document document.saveToFile("MergingResult.docx", FileFormat.Docx_2013); } } Если необходимо объединить документы, не начиная новую страницу, можно
клонировать содержимое других документов, чтобы добавить его в конец документа. import com.spire.doc.*; public class mergeDocuments { public static void main(String[] args){ //Create two Document objects and load two Word documents from disk Document document1 = new Document("C:/Samples/Sample1.docx"); Document document2 = new Document("C:/Samples/Sample2.docx"); //Loop through the second document to get all the sections for (Object sectionObj : (Iterable) document2.getSections()) { Section sec=(Section)sectionObj; //Loop through the sections of the second document to get their child objects for (Object docObj :(Iterable ) sec.getBody().getChildObjects()) { DocumentObject obj=(DocumentObject)docObj; //Get the last section of the first document Section lastSection = document1.getLastSection(); //Add the child objects to the last section of the first document Body body = lastSection.getBody(); body.getChildObjects().add(obj.deepClone()); } } //Save the result document document1.saveToFile("MergingResult.docx", FileFormat.Docx_2013); } } В этой статье мы узнали, как объединять документы Word с помощью Free
Spire.Doc for Java. Эта библиотека Word поддерживает и другие операции с
документами Word, такие как:
Объединение документов Word в один в Java
Слияние документов Word путем клонирования содержимого в Java
Резюме