java生成Excel表格

java 复制代码
public HSSFWorkbook CreateJZZJSList()  {
        // 绘制Excel
        String fileName = "自动分析详情";
        HSSFWorkbook wb = new HSSFWorkbook();//创建工作相簿对象
        HSSFSheet sheet = wb.createSheet(fileName); // --->创建了一个工作簿

        sheet.setDefaultRowHeight((short) 600); // ---->有得时候你想设置统一单元格的高度,就用这个方法
        sheet.setDefaultColumnWidth((short) 40);

        sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 6));// 表格样式固定为15列,此处合并列
        // 绘制第一行
        HSSFRow firstrow = sheet.createRow(0); // 下标为0的行开始
        HSSFCell title = firstrow.createCell(0);

        HSSFCellStyle style = wb.createCellStyle();
        title.setCellStyle(style);
        title.setCellValue(fileName);

        // 绘制标题行
        HSSFRow colTitlerow5 = sheet.createRow(1); // 绘制第2行
        HSSFCell colTitlerowCol5 = colTitlerow5.createCell(0);
        colTitlerowCol5.setCellStyle(style);
        colTitlerowCol5.setCellValue("序号");

        HSSFCell colTitlerowCol6 = colTitlerow5.createCell(1);
        colTitlerowCol6.setCellStyle(style);
        colTitlerowCol6.setCellValue("单位名称");

        //查询数据以行形式便利
        for (int i = 0; i < 6; i++) {

            HSSFRow row = sheet.createRow(i + 2);//创建行

            HSSFCell row5 = row.createCell(0);//创建列
            row5.setCellStyle(style);
            row5.setCellValue((i + 1));

            HSSFCell row6 = row.createCell(1);//创建列
            row6.setCellStyle(style);
            row6.setCellValue(("我是第二列"));

  }
        return wb;
    }

2.再写一个进入类

java 复制代码
    @RequestMapping("/inser")
    public void btnDaoChuExcel_Click(HttpServletResponse response)   {
        // 生成Xls并导出
        String xlsName = "自动分析详情表";
        HSSFWorkbook wb = CreateJZZJSList();
      try {
            response.reset();
            String fileName = new String((xlsName + ".xls").getBytes("gb2312"), "ISO8859-1");
            response.setContentType("application/x-msdownload");
            response.setHeader("Content-disposition", "attachment; filename=" + fileName);
            OutputStream out = response.getOutputStream();
            wb.write(out);
            out.flush();
            out.close();
            wb.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

解析

相关推荐
Cx330❀27 分钟前
【优选算法必刷100题】第038题(位运算):消失的两个数字
开发语言·c++·算法·leetcode·面试
Loo国昌29 分钟前
深入理解 FastAPI:Python高性能API框架的完整指南
开发语言·人工智能·后端·python·langchain·fastapi
Tao____39 分钟前
通用性物联网平台
java·物联网·mqtt·低代码·开源
曹轲恒1 小时前
SpringBoot整合SpringMVC(上)
java·spring boot·spring
hoiii1871 小时前
16APSK/32APSK调制解调MATLAB仿真实现
开发语言·matlab·fpga开发
feifeigo1232 小时前
基于MATLAB的情感语音模板培训与识别实现方案
开发语言·matlab
JH30732 小时前
Java Spring中@AllArgsConstructor注解引发的依赖注入异常解决
java·开发语言·spring
码农水水2 小时前
米哈游Java面试被问:机器学习模型的在线服务和A/B测试
java·开发语言·数据库·spring boot·后端·机器学习·word
2601_949575862 小时前
Flutter for OpenHarmony二手物品置换App实战 - 表单验证实现
android·java·flutter
C++ 老炮儿的技术栈2 小时前
C/C++ 中 inline(内联函数)和宏定义(#define)的区别
开发语言·c++·git·算法·机器人·visual studio