Apache POI is an open-source java library to create and manipulate various file formats based on Microsoft Office. Using POI, one should be able to perform create, modify and display/read operations on the following file formats. For Example, java doesn’t provide built-in support for working with excel files, so we need to look for open-source APIs for the job.
Apache POI provides Java API for manipulating various file formats based on the Office Open XML (OOXML) standard and OLE2 standard from Microsoft. Apache POI releases are available under the Apache License (V2.0).
Implementation:
Before we move ahead it is suggested geeks you must be well versed with how to read files in the Apache POI library. it does include fundamental interfaces such as Workbook, Sheet, Row, and Cell. For a given Excel file say here it be ‘Geeks.xlsx’, it is needed to create sheets in it then do follow these below generic steps as listed below:
Step 1: Create a Java Maven project
Step 2: Add dependency in the pom.xml file. It is as shown below in the media file.
Example
XML
< dependency >
< groupId >org.apache.poi</ groupId >
< artifactId >poi</ artifactId >
< version >3.12</ version >
</ dependency >
< dependency >
< groupId >org.apache.poi</ groupId >
< artifactId >poi-ooxml</ artifactId >
< version >3.12</ version >
</ dependency >
|
Step 3: Create a class in the ‘javaResource’ Folder.
Java
import java.io.*;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
public class GFG {
public static void main(String[] args)
throws FileNotFoundException, IOException
{
Workbook wb = new HSSFWorkbook();
OutputStream fileOut
= new FileOutputStream( "Geeks.xlsx" );
Sheet sheet1 = wb.createSheet( "Array" );
Sheet sheet2 = wb.createSheet( "String" );
Sheet sheet3 = wb.createSheet( "LinkedList" );
Sheet sheet4 = wb.createSheet( "Tree" );
Sheet sheet5 = wb.createSheet( "Dynamic Programming" );
Sheet sheet6 = wb.createSheet( "Puzzles" );
System.out.println(
"Sheets Has been Created successfully" );
int numberOfSheets = wb.getNumberOfSheets();
System.out.println( "Total Number of Sheets: "
+ numberOfSheets);
wb.write(fileOut);
}
}
|
Output: On console
Sheets Has been Created successfully
Total Number of Sheets: 6
Output: Changes inside the Excel file are depicted in below visual aid provided.

Output explanation:
Here 6 sheets will be created in the Excel file passed in the above program that is ‘geeks.xlsx‘ as shown in the below media provided.