Ofttimes, we need to automate our processes and manipulate the documents programmatically. We need to create documents in bulk, read, process, and save the resultant documents. We need to work with a bunch of different file formats simultaneously. Luckily, for Java developers, we have an open-source API to work with Word, Spreadsheet, Presentation, Email, and Diagram file-formats – Apache POI. This cross-platform API is designed to work with Java Virtual Machine (JVM) based languages.
How to Install
Installing Apache POI is effortless. All you need to do is add the dependency in your maven based project. You can add the following dependency in your pom.xml and get started with Apache POI.
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.1.0</version> </dependency>
Create a Word Document
Using Apache POI you can create a word document using XWPFDocument and insert a paragraph in it using the XWPFParagraph class. The following code snippet shows how to create a Word document using the API.
// initialize a blank document XWPFDocument document = new XWPFDocument(); // create a new file FileOutputStream out = new FileOutputStream(new File("createdocument.docx")); // create a new paragraph paragraph XWPFParagraph paragraph = document.createParagraph(); XWPFRun run = paragraph.createRun(); run.setText("File Format Developer Guide - " + "Learn about computer files that you come across in " + "your daily work at: www.fileformat.com "); document.write(out); out.close(); System.out.println("Document created successfully")
The following is the resultant output document: