zoukankan      html  css  js  c++  java
  • web 文件下载

    response.reset();
    response.setContentType("octets/stream");
    response.addHeader("Content-Disposition","attachment;filename=test.xls");
    OutputStream os = response.getOutputStream();
    // 第一步,创建一个webbook,对应一个Excel文件
    HSSFWorkbook wb = new HSSFWorkbook();
    // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
    HSSFSheet sheet = wb.createSheet("学生表一");
    // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
    HSSFRow row = sheet.createRow((int) 0);
    // 第四步,创建单元格,并设置值表头 设置表头居中
    HSSFCellStyle style = wb.createCellStyle();
    style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式

    HSSFCell cell = row.createCell((short) 0);
    cell.setCellValue("学号");
    cell.setCellStyle(style);
    cell = row.createCell((short) 1);
    cell.setCellValue("姓名");
    cell.setCellStyle(style);
    cell = row.createCell((short) 2);
    cell.setCellValue("年龄");
    cell.setCellStyle(style);
    cell = row.createCell((short) 3);

    // 第五步,写入实体数据 实际应用中这些数据从数据库得到,

    for (int i = 0; i < 65000; i++)
    {
    row = sheet.createRow((int) i + 1);
    // 第四步,创建单元格,并设置值
    row.createCell((short) 0).setCellValue("stu"+i);
    row.createCell((short) 1).setCellValue("战三"+i);
    row.createCell((short) 2).setCellValue("hello");
    }
    // 第六步,将文件存到指定位置
    try
    {
    wb.write(os);
    }
    catch (Exception e)
    {
    e.printStackTrace();
    }

  • 相关阅读:
    Flink CEP实例及基础应用
    seata 分布式事务
    skywalking 分布式链路追踪
    datax 离线数据同步工具
    rocketmq 消息队列
    Nacos 服务注册
    跨站(cross-site)、跨域(cross-origin)、SameSite与XMLHttpRequest.withCredentials
    读写二进制文件与文本文件
    WPF中通过双击编辑DataGrid中Cell(附源码)
    记一次XML文件读取优化
  • 原文地址:https://www.cnblogs.com/Wen-yu-jing/p/4250927.html
Copyright © 2011-2022 走看看