Working with excel in selenium

Writing into Excel File:

import java.io.File;
import java.io.FileOutputStream;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class WriteExcel
{
    public static void main(String[] args) throws Exception
    {
        //Create blank workbook
        XSSFWorkbook workbook = new XSSFWorkbook();
        //Create a blank sheet
        XSSFSheet spreadsheet = workbook.createSheet(" Employee Details");
        //Create row object
        XSSFRow row;
        //This data needs to be written (Object[])
        Map < String, Object[] > emp =  new TreeMap < String, Object[] >();
        emp.put( "1", new Object[] { "EMP ID", "EMP NAME", "DESIGNATION" });
        emp.put( "2", new Object[] { "EMP001", "Ajoy", "Manager" });
        emp.put( "3", new Object[] { "EMP002", "Rahul", "Tester" });
        emp.put( "4", new Object[] { "EMP003", "Jayant", "Developer" });

        //Iterate over data and write to sheet
        Set < String > keyid = emp.keySet();
        int rowid = 0;
        for (String key : keyid)
        {
            row = spreadsheet.createRow(rowid++);
            Object [] objectArr = emp.get(key);
            int cellid = 0;
            for (Object obj : objectArr)
            {
                Cell cell = row.createCell(cellid++);
                cell.setCellValue((String)obj);
            }
        }
        //Write the workbook in file system
        FileOutputStream out = new FileOutputStream(
                new File("D:\\Writesheet.xlsx"));
        workbook.write(out);
        out.close();
        System.out.println( "Excel with employee information is created successfully" );
    }
}