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());
                }
            }
        }
    }
  • 相关阅读:
    Mysql子查询、关联查询
    Mysql 注意细节
    IE和FF区别关于css和js
    php 使用curl模拟登录人人(校内)网
    解析php mysql 事务处理回滚操作
    《Linux内核设计的艺术》学习笔记(二)INT 0x13中断
    《Linux内核设计的艺术》学习笔记(一)从开机加电到加载三个汇编源码
    CSS笔记(一)CSS规则
    HTML笔记(七)head相关元素<base> & <meta>
    HTML笔记(六)文档类型
  • 原文地址:https://www.cnblogs.com/duanwandao/p/9363953.html
Copyright © 2011-2022 走看看