Tuesday 26 February 2013

Export Excel from JAVA using POI

use POI jar for the same

package xx;

import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.HSSFColor;
public class ExportToExcel {

    public HSSFWorkbook createExcelFile() {
        return new HSSFWorkbook();
    }

    public HSSFSheet creatExcelSheet(String sheetName, HSSFWorkbook wb) {
        return wb.createSheet(sheetName);
    }

    public HSSFWorkbook createExcelForImport(String header[], List data, String sheetname) {

        HSSFWorkbook wb = createExcelFile();
        HSSFSheet hSSFSheet = creatExcelSheet(sheetname, wb);
        //set header
        HSSFRow row = hSSFSheet.createRow((short) 0);
        for (int i = 0; i < header.length; i++) {
            String headerTitle = header[i];
            HSSFCell cell = row.createCell((short) i);
            HSSFCellStyle style = wb.createCellStyle();
            style.setFillBackgroundColor(HSSFColor.DARK_YELLOW.index);
            HSSFFont font = wb.createFont();
//            font.setFontHeightInPoints((short) 20);
            font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
            style.setFont(font);
            cell.setCellStyle(style);
            cell.setCellValue(headerTitle);
        }
        //setData
        int counter = 0;
        int sheetCounter = 1;
        for (int i = 0; i < data.size(); i++) {
            counter++;
            if (counter == 32766) {
                hSSFSheet = creatExcelSheet(sheetname + sheetCounter++, wb);
                counter = 0;
            }
            row = hSSFSheet.createRow((short) counter);
            hSSFSheet.autoSizeColumn((short) 1);
            Object[] importData = (Object[]) data.get(i);
            for (int j = 0; j < importData.length; j++) {
                Object object = importData[j];
                HSSFCell cell = row.createCell((short) j);
                cell.setCellValue(object != null ? object.toString() : "");

            }
        }
        return wb;
    }
}

No comments:

Post a Comment