Example usage for org.apache.poi.ss.usermodel Row createCell

List of usage examples for org.apache.poi.ss.usermodel Row createCell

Introduction

In this page you can find the example usage for org.apache.poi.ss.usermodel Row createCell.

Prototype

Cell createCell(int column);

Source Link

Document

Use this to create new cells within the row and return it.

Usage

From source file:com.jfinal.ext.kit.excel.PoiExporter.java

License:Apache License

private static void processAsModel(String[] columns, Row row, Object obj) {
    Cell cell;/*from  w  ww. j a  v a  2  s . c  o m*/
    Model<?> model = (Model<?>) obj;
    Set<Entry<String, Object>> entries = model.getAttrsEntrySet();
    if (columns.length == 0) { // show all if column not specified
        int columnIndex = 0;
        for (Entry<String, Object> entry : entries) {
            cell = row.createCell(columnIndex);
            cell.setCellValue(entry.getValue() + "");
            columnIndex++;
        }
    } else {
        for (int j = 0, len = columns.length; j < len; j++) {
            cell = row.createCell(j);
            cell.setCellValue(model.get(columns[j]) == null ? "" : model.get(columns[j]) + "");
        }
    }
}

From source file:com.jfinal.ext.kit.PoiKit.java

License:Apache License

public Workbook export() {
    if (headers == null) {
        System.out.println("headers can not be null");
        return null;
    }//from w  w w.j  av  a2s .c om
    if (columns == null) {
        System.out.println("columns can not be null");
        return null;
    }
    if (cellWidth < 0) {
        System.out.println("cellWidth < 0");
        return null;
    }
    Workbook wb;
    wb = new HSSFWorkbook();
    if (data.length > 1) {
        for (List<?> item : data) {
            if (item.size() >= MAX_ROWS) {
                System.out
                        .println("Invalid data size (" + item.size() + ") outside allowable range (0..65535)");
            }
        }
    } else if (data[0].size() > MAX_ROWS) {
        data = dice(data[0], MAX_ROWS).toArray(new List<?>[] {});
    }
    if (data.length == 0) {
        return wb;
    }
    for (int i = 0; i < data.length; i++) {
        Sheet sheet = wb.createSheet(sheetName + (i == 0 ? "" : (i + 1)));
        Row row;
        Cell cell;
        if (headers.length > 0) {
            row = sheet.createRow(0);
            if (headerRow <= 0) {
                headerRow = HEADER_ROW;
            }
            headerRow = Math.min(headerRow, MAX_ROWS);
            for (int h = 0, lenH = headers.length; h < lenH; h++) {
                if (cellWidth > 0) {
                    sheet.setColumnWidth(h, cellWidth);
                }
                cell = row.createCell(h);
                cell.setCellValue(headers[h]);
            }
        }

        for (int j = 0, len = data[i].size(); j < len; j++) {
            row = sheet.createRow(j + headerRow);
            Object obj = data[i].get(j);
            if (obj == null) {
                continue;
            }
            if (obj instanceof Map) {
                processAsMap(columns, row, obj);
            } else if (obj instanceof Model) {
                processAsModel(columns, row, obj);
            } else if (obj instanceof Record) {
                processAsRecord(columns, row, obj);
            }
        }
    }
    return wb;
}

From source file:com.jfinal.ext.kit.PoiKit.java

License:Apache License

@SuppressWarnings("unchecked")
private static void processAsMap(String[] columns, Row row, Object obj) {
    Cell cell;/*from   w  w w .jav  a 2  s .  co m*/
    Map<String, Object> map = (Map<String, Object>) obj;
    if (columns.length == 0) {// 
        Set<String> keys = map.keySet();
        int columnIndex = 0;
        for (String key : keys) {
            cell = row.createCell(columnIndex);
            cell.setCellValue(map.get(key) + "");
            columnIndex++;
        }
    } else {
        for (int j = 0, lenJ = columns.length; j < lenJ; j++) {
            cell = row.createCell(j);
            cell.setCellValue(map.get(columns[j]) + "");
        }
    }
}

From source file:com.jfinal.ext.kit.PoiKit.java

License:Apache License

private static void processAsModel(String[] columns, Row row, Object obj) {
    Cell cell;/*from w  w  w.j  a v  a  2s.c  o  m*/
    Model<?> model = (Model<?>) obj;
    Set<Entry<String, Object>> entries = model.getAttrsEntrySet();
    if (columns.length == 0) {// 
        int columnIndex = 0;
        for (Entry<String, Object> entry : entries) {
            cell = row.createCell(columnIndex);
            cell.setCellValue(entry.getValue() + "");
            columnIndex++;
        }
    } else {
        for (int j = 0, lenJ = columns.length; j < lenJ; j++) {
            cell = row.createCell(j);
            cell.setCellValue(model.get(columns[j]) + "");
        }
    }
}

From source file:com.jfinal.ext.kit.PoiKit.java

License:Apache License

private static void processAsRecord(String[] columns, Row row, Object obj) {
    Cell cell;//  w w w  .ja  v  a  2  s.c  o m
    Record record = (Record) obj;
    Map<String, Object> map = record.getColumns();
    if (columns.length == 0) {// 
        record.getColumns();
        Set<String> keys = map.keySet();
        int columnIndex = 0;
        for (String key : keys) {
            cell = row.createCell(columnIndex);
            cell.setCellValue(record.get(key) + "");
            columnIndex++;
        }
    } else {
        for (int j = 0, lenJ = columns.length; j < lenJ; j++) {
            cell = row.createCell(j);
            cell.setCellValue(map.get(columns[j]) + "");
        }
    }
}

From source file:com.joeyturczak.jtscanner.utils.CreateExcelSpreadsheet.java

License:Apache License

public CreateExcelSpreadsheet(List<List> rowLists) {

    mDate = Utility.getTodayDateString();
    mFileName = Utility.getTodayDateAndTimeString();

    mWorkbook = new HSSFWorkbook();
    mSheet = mWorkbook.createSheet(mDate);
    HSSFCellStyle dateRowStyle = mWorkbook.createCellStyle();
    HSSFCellStyle headerRowStyle = mWorkbook.createCellStyle();
    HSSFCellStyle defaultStyle = mWorkbook.createCellStyle();
    HSSFCellStyle defaultAltStyle = mWorkbook.createCellStyle();
    HSSFFont headerFont = mWorkbook.createFont();
    HSSFFont defaultFont = mWorkbook.createFont();

    headerFont.setFontName("Arial");
    headerFont.setFontHeightInPoints((short) 14);
    headerFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);

    defaultFont.setFontName("Arial");
    defaultFont.setFontHeightInPoints((short) 14);

    dateRowStyle.setFont(headerFont);/*w w  w . j a  v  a  2 s. c om*/
    headerRowStyle.setFont(headerFont);
    defaultStyle.setFont(defaultFont);
    defaultAltStyle.setFont(defaultFont);

    dateRowStyle.setFillForegroundColor(HSSFColor.GREY_40_PERCENT.index);
    dateRowStyle.setFillPattern(CellStyle.SOLID_FOREGROUND);
    dateRowStyle.setAlignment(CellStyle.ALIGN_CENTER);

    headerRowStyle.setFillForegroundColor(HSSFColor.GREY_40_PERCENT.index);
    headerRowStyle.setFillPattern(CellStyle.SOLID_FOREGROUND);
    headerRowStyle.setBorderLeft(HSSFBorderFormatting.BORDER_THIN);
    headerRowStyle.setBorderRight(HSSFBorderFormatting.BORDER_THIN);
    headerRowStyle.setBorderBottom(HSSFBorderFormatting.BORDER_THIN);
    headerRowStyle.setBorderTop(HSSFBorderFormatting.BORDER_THIN);
    headerRowStyle.setAlignment(CellStyle.ALIGN_CENTER);

    defaultStyle.setBorderLeft(HSSFBorderFormatting.BORDER_THIN);
    defaultStyle.setBorderRight(HSSFBorderFormatting.BORDER_THIN);
    defaultStyle.setBorderBottom(HSSFBorderFormatting.BORDER_THIN);
    defaultStyle.setBorderTop(HSSFBorderFormatting.BORDER_THIN);
    defaultStyle.setAlignment(CellStyle.ALIGN_CENTER);

    defaultAltStyle.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index);
    defaultAltStyle.setFillPattern(CellStyle.SOLID_FOREGROUND);
    defaultAltStyle.setBorderLeft(HSSFBorderFormatting.BORDER_THIN);
    defaultAltStyle.setBorderRight(HSSFBorderFormatting.BORDER_THIN);
    defaultAltStyle.setBorderBottom(HSSFBorderFormatting.BORDER_THIN);
    defaultAltStyle.setBorderTop(HSSFBorderFormatting.BORDER_THIN);
    defaultAltStyle.setAlignment(CellStyle.ALIGN_CENTER);

    try {
        Row dateRow = mSheet.createRow(0);
        dateRow.setHeight((short) 500);
        Cell dateCell = dateRow.createCell(0);
        dateCell.setCellValue(mDate);
        dateCell.setCellStyle(dateRowStyle);
        mSheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 3));

        for (int colIndex = 0; colIndex < rowLists.size(); colIndex++) {
            Row row = mSheet.createRow(mRowNum);
            mSheet.setColumnWidth(0, 1200);

            List<String> nextRowList = rowLists.get(colIndex);

            for (int rowIndex = 0; rowIndex < nextRowList.size(); rowIndex++) {
                Cell cell = row.createCell(rowIndex);
                cell.setCellValue(nextRowList.get(rowIndex));
                row.setHeight((short) 400);
                cell.setCellStyle(defaultStyle);
                if (colIndex % 2 == 0) {
                    cell.setCellStyle(defaultAltStyle);
                }
                if (colIndex == 0) {
                    row.setHeight((short) 500);
                    cell.setCellStyle(headerRowStyle);
                }
                if (rowIndex > 0) {
                    mSheet.setColumnWidth(rowIndex, 4400);
                }
            }

            mRowNum++;
        }

    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:com.jogo.dao.RepositorioDao.java

public void exportar(File arquivo, List<Usuario> Usuario, List<Perguntas> capAmerica,
        List<Perguntas> oSenhorAneis, List<Perguntas> batmam, List<Perguntas> veloFur,
        List<Perguntas> harryPotter, List<Perguntas> instrMortais, List<Perguntas> cronicNarnia,
        List<Perguntas> varios) {
    //CRIO MEU ARQUIVO DE EXCEL. INSTANCIOANDO DE XSSFWorkbook
    wb = new XSSFWorkbook();

    try {/*from  ww  w .j a  va  2s  .  c  om*/

        //SALVAR A FOLHA 1 ONDE ESTO OS USUARIOS.    
        Sheet folha = wb.createSheet("USUARIO");
        int contador = 0;

        //CRIO UM FORACH DE ARRAY LIST DE USUARIO
        for (Usuario u : Usuario) {

            //CRIO A LINHA PASSANDO O CONTADOR(INDEX DA LINHA) E CAPTURO A LINHA
            Row fila = folha.createRow(contador);

            //ENCREMENTO O CONTADOR PARA IR PARA A PROXIMA LINHA.
            contador++;

            //AGORA USO UM FOR PARA PEGAR AS COLUNAS, QUE SO DUAS COLUNAS.
            for (int coluna = 0; coluna < 2; coluna++) {

                //TENDO A LINHA E COLUNA JA POSSO TER MINHA CELULA.
                Cell celula = fila.createCell(coluna);
                //SE A COLUNA FOR A 0 EU ADD O NOME NELA, SENAO ADD A PONTUAO.
                //FICARIA COLUNA 1 - NOME , COLUNA 2 - PONTUAO.
                if (coluna == 0) {
                    celula.setCellValue(u.getNome());
                } else {
                    celula.setCellValue(u.getPontuacao());
                }
                //SE O ARQUIVO NO EXISTIR ELE CRIAR E SE J? EXISTIR ELE SUBSTITUI.
                //NESSE CASO O ARQUIVO SEMPRE EXISTIRAR, PIS  NELE QUE EST? AS PERGUNTAS SALVAS.
                if (!arquivo.exists()) {
                    wb.write(new FileOutputStream(arquivo));
                } else {
                    wb.write(new FileOutputStream(arquivo));
                }

            }
        }
        //CHAMANDO O METODO E PASSANDO O INDEX PARA CADA FOLHA ONDE SERA SALVA.
        exportarPergunta(1, capAmerica);
        exportarPergunta(2, oSenhorAneis);
        exportarPergunta(3, batmam);
        exportarPergunta(4, veloFur);
        exportarPergunta(5, harryPotter);
        exportarPergunta(6, instrMortais);
        exportarPergunta(7, cronicNarnia);
        exportarPergunta(8, varios);
        wb.write(new FileOutputStream(arquivo));
    } catch (Exception e) {
    }
}

From source file:com.jogo.dao.RepositorioDao.java

public void exportarPergunta(int index, List<Perguntas> perguntas) {
    //NOMEAR AS FOLHAS NO EXCEL COM O NOME DA CATEGORIA.
    String nome = "";
    switch (index) {
    case 1:/*from w  w  w  .j  a  v  a 2 s .  com*/
        nome = "CAPITO AMERICA";
        break;
    case 2:
        nome = "O SENHOR DOS ANIS";
        break;
    case 3:
        nome = "BATMAN";
        break;
    case 4:
        nome = "VELOZES E FURIOSOS";
        break;
    case 5:
        nome = "HARRY POTTER";
        break;
    case 6:
        nome = "OS INSTRUMENTOS MORTAIS";
        break;
    case 7:
        nome = "AS CRONICAS DE NARNIA";
        break;
    case 8:
        nome = "VARIOS FILMES";
        break;
    }

    //IGUAL AO PASSO DO USUARIO, AGORA SENDO COM AS PERGUNTAS.
    Sheet folha2 = wb.createSheet(nome);
    int contador2 = 0;
    for (Perguntas p : perguntas) {

        Row fila2 = folha2.createRow(contador2);
        contador2++;
        for (int coluna2 = 0; coluna2 < 6; coluna2++) {
            Cell celula2 = fila2.createCell(coluna2);

            switch (coluna2) {
            case 0:
                celula2.setCellValue(p.getPergunta());
                break;
            case 1:
                celula2.setCellValue(p.getAlt1());
                break;
            case 2:
                celula2.setCellValue(p.getAlt2());
                break;
            case 3:
                celula2.setCellValue(p.getAlt3());
                break;
            case 4:
                celula2.setCellValue(p.getAlt4());
                break;
            case 5:
                celula2.setCellValue(p.getResposta());
                break;
            default:
                break;
            }
        }
    }

}

From source file:com.jshuabo.reportcenter.server.service.automoblie.impl.DefaultAutoRecordServiceImpl.java

License:Open Source License

@Override
public void importToExcel(Map<String, Object> exprotMap, HttpServletResponse response,
        HttpServletRequest request, String[] title, String excelName) {

    Map<String, Object> pageData = autoRecordDataMapper.exprotPageData(exprotMap);

    SXSSFWorkbook workbook = new SXSSFWorkbook(1000); // keep 100 rows in memory, exceeding rows

    int flag = 1; // 
    int rowCount = 150000; // ?sheet 
    long count = (Long) pageData.get("COUNT");
    long pageSize = rowCount; // ??
    long page = 1;
    if (rowCount < count) {
        if (count % pageSize == 0) {
        } else {/*from  w w w  .  ja va  2s  .c o  m*/
            page = count / pageSize + 1;
        } // 
    }

    Sheet sh = workbook.createSheet(excelName + System.currentTimeMillis());

    Row row = sh.createRow((short) 0); // 
    Cell cell = null;
    CellStyle[] cs = POIUtils.cellStyle(workbook);

    POIUtils.createHeard(sh, row, cell, cs, title);

    for (int i = 1; i <= page; i++) {

        long offset = (i - 1) * pageSize;
        long rows = pageSize;
        exprotMap.put("offset", Long.valueOf(offset));
        exprotMap.put("rows", Long.valueOf(rows));

        // ??
        List<AutoRecordData> autoRecordDataList = autoRecordDataMapper.exprot2Excel(exprotMap);

        if (autoRecordDataList.isEmpty())
            continue;

        for (int rownum = 0; rownum < autoRecordDataList.size(); rownum++) {
            AutoRecordData autoRecord = autoRecordDataList.get(rownum);

            String subStation = SubStationConstant.getSubStationByKey(autoRecord.getSubStation());
            String licenseDate = DateFormatUtils.format(autoRecord.getLicenseDate(), DateFormatUtils.ymd);
            String inspectionDate = DateFormatUtils.format(autoRecord.getInspectionDate(), DateFormatUtils.ymd);
            String insuranceDate = DateFormatUtils.format(autoRecord.gettLInsuranceDate(), DateFormatUtils.ymd);
            String changeDate = DateFormatUtils.format(autoRecord.getChangeDate(), DateFormatUtils.ymd);
            String strongInsDate = DateFormatUtils.format(autoRecord.getStrongInsDate(), DateFormatUtils.ymd);

            // ? ?sheet 
            if (flag > pageSize) {
                flag = 1;
                sh = workbook.createSheet(excelName + System.currentTimeMillis());
                row = sh.createRow((short) 0);
                POIUtils.createHeard(sh, row, cell, cs, title);
            }
            row = sh.createRow(flag);
            for (int cellnum = 0; cellnum < title.length; cellnum++) {
                cell = row.createCell(0);
                cell.setCellValue(subStation);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(1);
                cell.setCellValue(autoRecord.getDeputyCard());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(2);
                cell.setCellValue(autoRecord.getCarKind());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(3);
                cell.setCellValue(autoRecord.getLicenseNo());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(4);
                cell.setCellValue(autoRecord.getLicense());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(5);
                cell.setCellValue(licenseDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(6);
                cell.setCellValue(autoRecord.getLicenseName());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(7);
                cell.setCellValue(inspectionDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(8);
                cell.setCellValue(autoRecord.getName());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(9);
                cell.setCellValue(autoRecord.getIdCard());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(10);
                cell.setCellValue(String.valueOf(autoRecord.getFtReceive()));
                cell.setCellStyle(cs[1]);

                cell = row.createCell(11);
                cell.setCellValue(changeDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(12);
                cell.setCellValue(autoRecord.getTelephone());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(13);
                cell.setCellValue(strongInsDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(14);
                cell.setCellValue(String.valueOf(autoRecord.gettLInsurance()));
                cell.setCellStyle(cs[1]);

                cell = row.createCell(15);
                cell.setCellValue(insuranceDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(16);
                cell.setCellValue(autoRecord.getPoliceProve());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(17);
                cell.setCellValue(autoRecord.getHouseholdCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(18);
                cell.setCellValue(autoRecord.getIdCardCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(19);
                cell.setCellValue(autoRecord.getLicenseCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(20);
                cell.setCellValue(autoRecord.getGuaranRespon());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(21);
                cell.setCellValue(autoRecord.getGuaranIncome());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(22);
                cell.setCellValue(autoRecord.getGuaranHouseCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(23);
                cell.setCellValue(autoRecord.getGuaranIDCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(24);
                cell.setCellValue(autoRecord.getDriLicenseCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(25);
                cell.setCellValue(autoRecord.getStrongInsCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(26);
                cell.setCellValue(autoRecord.getCommerInsuCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(27);
                cell.setCellValue(autoRecord.getCertificate());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(28);
                cell.setCellValue(String.valueOf(autoRecord.getAgreeDate()));
                cell.setCellStyle(cs[1]);

                cell = row.createCell(29);
                cell.setCellValue(autoRecord.getRentalAgreement());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(30);
                cell.setCellValue(autoRecord.getStrongInsPrompt());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(31);
                cell.setCellValue(autoRecord.gettLInsurancePrompt());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(32);
                cell.setCellValue(autoRecord.getInspectionPrompt());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(33);
                cell.setCellValue(autoRecord.getChangePrompt());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(34);
                cell.setCellValue(autoRecord.getStatus());
                cell.setCellStyle(cs[1]);

            }

            flag++;
        }
    }
    POIUtils.exprot(workbook, response, excelName);
}

From source file:com.jshuabo.reportcenter.server.service.automoblie.impl.DefaultBranchLineCarInfoServiceImpl.java

License:Open Source License

@Override
public void importToExcel(Map<String, Object> exprotMap, HttpServletResponse response,
        HttpServletRequest request, String[] title, String excelName) {
    User user = SecurityContextHolder.getCurrentUser();
    if (StringUtils.isEmpty(exprotMap.get("subStation"))) {
        exprotMap.put("subStation", user.getId());
    }//  w w w . j  a va  2 s .  c  o  m
    Map<String, Object> pageData = carInfoMapper.exprotPageData(exprotMap);

    SXSSFWorkbook workbook = new SXSSFWorkbook(1000); // keep 100 rows in memory, exceeding rows

    int flag = 1; // 
    int rowCount = 150000; // ?sheet 
    long count = (Long) pageData.get("COUNT");
    long pageSize = rowCount; // ??
    long page = 1;
    if (rowCount < count) {
        if (count % pageSize == 0) {
        } else {
            page = count / pageSize + 1;
        } // 
    }

    Sheet sh = workbook.createSheet(excelName + System.currentTimeMillis());

    Row row = sh.createRow((short) 0); // 
    Cell cell = null;
    CellStyle[] cs = POIUtils.cellStyle(workbook);

    POIUtils.createHeard(sh, row, cell, cs, title);

    for (int i = 1; i <= page; i++) {

        long offset = (i - 1) * pageSize;
        long rows = pageSize;
        exprotMap.put("offset", Long.valueOf(offset));
        exprotMap.put("rows", Long.valueOf(rows));
        // ??
        List<BranchLineCarInfo> autoRecordDataList = carInfoMapper.exprot2Excel(exprotMap);

        if (autoRecordDataList.isEmpty())
            continue;

        for (int rownum = 0; rownum < autoRecordDataList.size(); rownum++) {
            BranchLineCarInfo branchLineCarInfo = autoRecordDataList.get(rownum);

            String subStation = branchLineCarInfo.getExtendProp3();
            String licenseDate = DateFormatUtils.format(branchLineCarInfo.getLicenseDate(),
                    DateFormatUtils.ymd);
            String inspectionDate = DateFormatUtils.format(branchLineCarInfo.getInspectionDate(),
                    DateFormatUtils.ymd);
            String insuranceDate = DateFormatUtils.format(branchLineCarInfo.getTlInsuranceDate(),
                    DateFormatUtils.ymd);
            String changeDate = DateFormatUtils.format(branchLineCarInfo.getChangeDate(), DateFormatUtils.ymd);
            String strongInsDate = DateFormatUtils.format(branchLineCarInfo.getStrongInsdate(),
                    DateFormatUtils.ymd);
            String agreeDate = DateFormatUtils.format(branchLineCarInfo.getAgreeDate(), DateFormatUtils.ymd);

            // ? ?sheet 
            if (flag > pageSize) {
                flag = 1;
                sh = workbook.createSheet(excelName + System.currentTimeMillis());
                row = sh.createRow((short) 0);
                POIUtils.createHeard(sh, row, cell, cs, title);
            }
            row = sh.createRow(flag);
            for (int cellnum = 0; cellnum < title.length; cellnum++) {
                cell = row.createCell(0);
                cell.setCellValue(subStation);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(1);
                cell.setCellValue(branchLineCarInfo.getDeputyCard());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(2);
                cell.setCellValue(branchLineCarInfo.getCarKind());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(3);
                cell.setCellValue(branchLineCarInfo.getLicenseNo());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(4);
                cell.setCellValue(branchLineCarInfo.getLicense());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(5);
                cell.setCellValue(licenseDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(6);
                cell.setCellValue(branchLineCarInfo.getLicenseName());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(7);
                cell.setCellValue(inspectionDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(8);
                cell.setCellValue(branchLineCarInfo.getName());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(9);
                cell.setCellValue(branchLineCarInfo.getIdCard());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(10);
                cell.setCellValue(String.valueOf(branchLineCarInfo.getFtReceive()));
                cell.setCellStyle(cs[1]);

                cell = row.createCell(11);
                cell.setCellValue(changeDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(12);
                cell.setCellValue(branchLineCarInfo.getTelephone());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(13);
                cell.setCellValue(strongInsDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(14);
                cell.setCellValue(StringUtils.isEmpty(branchLineCarInfo.getTlInsurance()) ? 0D
                        : branchLineCarInfo.getTlInsurance());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(15);
                cell.setCellValue(insuranceDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(16);
                cell.setCellValue(branchLineCarInfo.getPoliceProve());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(17);
                cell.setCellValue(branchLineCarInfo.getHouseholdCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(18);
                cell.setCellValue(branchLineCarInfo.getIdcardCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(19);
                cell.setCellValue(branchLineCarInfo.getLicenseCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(20);
                cell.setCellValue(branchLineCarInfo.getGuaranRespon());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(21);
                cell.setCellValue(branchLineCarInfo.getGuaranIncome());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(22);
                cell.setCellValue(branchLineCarInfo.getGuaranhouseCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(23);
                cell.setCellValue(branchLineCarInfo.getGuaranidCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(24);
                cell.setCellValue(branchLineCarInfo.getDrilicenseCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(25);
                cell.setCellValue(branchLineCarInfo.getStronginsCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(26);
                cell.setCellValue(branchLineCarInfo.getCommerinsuCopy());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(27);
                cell.setCellValue(branchLineCarInfo.getCertificate());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(28);
                cell.setCellValue(agreeDate);
                cell.setCellStyle(cs[1]);

                cell = row.createCell(29);
                cell.setCellValue(branchLineCarInfo.getRentalAgreement());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(30);
                cell.setCellValue(branchLineCarInfo.getStronginsPrompt());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(31);
                cell.setCellValue(branchLineCarInfo.getTlinsurancePrompt());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(32);
                cell.setCellValue(branchLineCarInfo.getInspectionPrompt());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(33);
                cell.setCellValue(branchLineCarInfo.getChangePrompt());
                cell.setCellStyle(cs[1]);

                cell = row.createCell(34);
                cell.setCellValue(branchLineCarInfo.getStatus());
                cell.setCellStyle(cs[1]);

            }
            flag++;
        }
    }
    POIUtils.exprot(workbook, response, excelName);
}