zoukankan      html  css  js  c++  java
  • ExcelUtil

    package com.java1234.util;
    
    import java.io.InputStream;
    import java.sql.ResultSet;
    
    import org.apache.poi.hssf.usermodel.HSSFCell;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    import org.apache.poi.poifs.filesystem.POIFSFileSystem;
    import org.apache.poi.ss.usermodel.Row;
    import org.apache.poi.ss.usermodel.Sheet;
    import org.apache.poi.ss.usermodel.Workbook;
    
    public class ExcelUtil {
    
        public static void fillExcelData(ResultSet rs,Workbook wb,String[] headers)throws Exception{
            int rowIndex=0;
            Sheet sheet=wb.createSheet();
            Row row=sheet.createRow(rowIndex++);
            for(int i=0;i<headers.length;i++){
                row.createCell(i).setCellValue(headers[i]);
            }
            while(rs.next()){
                row=sheet.createRow(rowIndex++);
                for(int i=0;i<headers.length;i++){
                    row.createCell(i).setCellValue(rs.getObject(i+1).toString());
                }
            }
        }
        
        public static Workbook fillExcelDataWithTemplate(ResultSet rs,String templateFileName)throws Exception{
            InputStream inp=ExcelUtil.class.getResourceAsStream("/com/java1234/template/"+templateFileName);
            POIFSFileSystem fs=new POIFSFileSystem(inp);
            Workbook wb=new HSSFWorkbook(fs);
            Sheet sheet=wb.getSheetAt(0);
            // 获取列数
            int cellNums=sheet.getRow(0).getLastCellNum();
            int rowIndex=1;
            while(rs.next()){
                Row row=sheet.createRow(rowIndex++);
                for(int i=0;i<cellNums;i++){
                    row.createCell(i).setCellValue(rs.getObject(i+1).toString());
                }
            }
            return wb;
        }
        
        public static String formatCell(HSSFCell hssfCell){
            if(hssfCell==null){
                return "";
            }else{
                if(hssfCell.getCellType()==HSSFCell.CELL_TYPE_BOOLEAN){
                    return String.valueOf(hssfCell.getBooleanCellValue());
                }else if(hssfCell.getCellType()==HSSFCell.CELL_TYPE_NUMERIC){
                    return String.valueOf(hssfCell.getNumericCellValue());
                }else{
                    return String.valueOf(hssfCell.getStringCellValue());
                }
            }
        }
    }
  • 相关阅读:
    从HDFS下载文件到本地
    oracle jdbc jar包异常
    spring jdbctemplate 启动报错(oracle驱动bug)
    solr搜索异常
    jdbc 处理Clob
    Wavosaur音频编辑软件: 功能专业,体积超小(500KB)
    isa server 2004中找不到HTTP过滤选项。
    cisco pix logging facility含义
    IPSec基础-密钥交换和密钥保护
    cisco 831 使用 SDM
  • 原文地址:https://www.cnblogs.com/duanwandao/p/9363953.html
Copyright © 2011-2022 走看看