1. pom引入poi的maven依赖

     <dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>3.15</version>
    </dependency>
  2. 单元格的创建,设置样式和赋值

     package com.yl;
    
     import java.io.FileOutputStream;
    import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFCell;
    import org.apache.poi.hssf.usermodel.HSSFCellStyle;
    import org.apache.poi.hssf.usermodel.HSSFRow;
    import org.apache.poi.hssf.usermodel.HSSFSheet;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    import org.apache.poi.hssf.util.CellRangeAddress; @SuppressWarnings("deprecation")
    public class Book1 { public static void main(String[] args) {
    HSSFWorkbook workbook = new HSSFWorkbook(); // 创建一个excel
    HSSFSheet sheet = workbook.createSheet("sheet1");// 新建sheet页 HSSFCellStyle cellStyle = workbook.createCellStyle(); // 新建单元格样式
    cellStyle.setFillForegroundColor((short) 13);// 设置背景色
    cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
    cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 居中
    cellStyle.setWrapText(true);// 设置自动换行 HSSFRow titleRow = sheet.createRow(0);
    CellRangeAddress cra1 = new CellRangeAddress(0, 0, 0, 5);
    sheet.addMergedRegion(cra1);
    titleRow.createCell(0).setCellValue("haha1");
    CellRangeAddress cra2 = new CellRangeAddress(0, 0, 6, 11);
    sheet.addMergedRegion(cra2);
    titleRow.createCell(6).setCellValue("haha2");
    CellRangeAddress cra3 = new CellRangeAddress(0, 0, 12, 17);
    sheet.addMergedRegion(cra3);
    titleRow.createCell(12).setCellValue("haha3");
    CellRangeAddress cra4 = new CellRangeAddress(0, 0, 18, 23);
    sheet.addMergedRegion(cra4);
    titleRow.createCell(18).setCellValue("haha4");
    CellRangeAddress cra5 = new CellRangeAddress(0, 0, 24, 29);
    sheet.addMergedRegion(cra5); titleRow.createCell(24).setCellValue("haha5"); HSSFRow row = sheet.createRow(1);
    // 参数1:起始行 参数2:终止行 参数3:起始列 参数4:终止列
    CellRangeAddress region1 = new CellRangeAddress(1, 5, 0, 5); sheet.addMergedRegion(region1);
    HSSFCell cellB1 = row.createCell(0);
    cellB1.setCellValue("B1"); CellRangeAddress region2 = new CellRangeAddress(1, 5, 6, 11);
    sheet.addMergedRegion(region2);
    // HSSFRow row1 = sheet.createRow(0);//不要再重新创建行数了,这样会把之前填充的数据删除掉!
    HSSFCell cellB2 = row.createCell(6);
    cellB2.setCellValue("B2"); CellRangeAddress region3 = new CellRangeAddress(1, 5, 12, 17);
    sheet.addMergedRegion(region3);
    // HSSFRow row1 = sheet.createRow(0);//不要再重新创建行数了,这样会把之前填充的数据删除掉!
    HSSFCell cellB3 = row.createCell(12);
    cellB3.setCellValue("B3"); CellRangeAddress region4 = new CellRangeAddress(1, 5, 18, 23);
    sheet.addMergedRegion(region4);
    // HSSFRow row1 = sheet.createRow(0);//不要再重新创建行数了,这样会把之前填充的数据删除掉!
    HSSFCell cellB4 = row.createCell(18);
    cellB4.setCellValue("B4"); // 输出到本地
    String excelName = "myExcel.xls";
    FileOutputStream out = null;
    try {
    out = new FileOutputStream(excelName);
    workbook.write(out);
    out.flush();
    out.close();
    } catch (Exception e) {
    e.printStackTrace();
    } finally {
    if (out != null)
    try {
    out.close();
    } catch (IOException e) {
    e.printStackTrace();
    }
    out = null;
    System.out.println("导出成功");
    } } }
  3. 将文件在网页上导出:

     // POI导出流文件下载
    public static void downloadExcel(HSSFWorkbook workbook, HttpServletResponse response, String filename)
    throws IOException {
    try {
    OutputStream out = response.getOutputStream();
    response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode(filename, "UTF-8"));
    response.setContentType("application/msexcel;charset=UTF-8");
    workbook.write(out);
    out.flush();
    out.close();
    } catch (IOException e) {
    e.printStackTrace();
    }
    }

java生成Excel文件,下载的更多相关文章

  1. java生成excel文件

    首先下载jexcelapi_2_6_12.tar.gz,解压后将里面的jxl.jar复制到WEB-INF/lib目录下面 String filePath = request.getParameter( ...

  2. 两种方式实现java生成Excel

    Web应用中难免会遇到需要将数据导出并生成excel文件的需求.同样,对于本博客中的总结,也是建立在为了完成这样的一个需求,才开始去了解其实现形式,并且顺利完成需求的开发,先将实现过程总结于此.本博文 ...

  3. 使用node.js生成excel报表下载(excel-export express篇)

    引言:日常工作中已经有许多应用功能块使用了nodejs作为web服务器,而生成报表下载也是我们在传统应用. java中提供了2套类库实现(jxl 和POI),.NET 作为微软的亲儿子更加不用说,各种 ...

  4. Java生成excel导出文件(使用poi+JXL)

    1.使用poi生成文件 package com.mi.entity; import java.util.Date; public class Student { private int id; pri ...

  5. XLSTransformer生成excel文件简单演示样例

    项目结构图: 项目中所用到的jar,能够到http://www.findjar.com/index.x下载 ExcelUtil类源代码: package util; import java.io.IO ...

  6. 实现excel导入导出功能,excel导入数据到页面中,页面数据导出生成excel文件

    今天接到项目中的一个功能,要实现excel的导入,导出功能.这个看起来思路比较清楚,但是做起了就遇到了不少问题. 不过核心的问题,大家也不会遇到了.每个项目前台页面,以及数据填充方式都不一样,不过大多 ...

  7. springMVC(4)---生成excel文件并导出

    springMVC(4)---生成excel文件并导出 在开发过程中,需要将数据库中的数据以excel表格的方式导出. 首先说明.我这里用的是Apache的POI项目,它是目前比较成熟的HSSF接口, ...

  8. oracle PL/SQL调用Java生成Excel

    现在有个需求,  要求编写oracle存储过程生成Excel文件到指定目录,  但是oracle自己的API貌似不太给力,  所以只能通过另一种更强大的语言来实现了  ——Java.有一个Java框架 ...

  9. [转]java生成 excel 并导出文件

    原文:https://blog.csdn.net/xunwei0303/article/details/53213130 目前,比较常用的实现Java导入.导出Excel的技术有两种Jakarta P ...

随机推荐

  1. C# 使用EPPlus 秒导出10万条数据

    1.先要引用dll文件,可以直接使用vs自带的包管理,如下图: 输入 EPPlus 我这里是安装过了的所以这里显示的是卸载而不是安装. 安装成功了之后会看到这个dll文件 代码如下: //导出Exce ...

  2. bzoj3730 震波 [动态点分治,树状数组]

    传送门 思路 如果没有强制在线的话可以离线之后CDQ分治随便搞. 有了强制在线之后--可能可以二维线段树?然而我不会算空间. 然后我们莫名其妙地想到了动态点分治,然后这题就差不多做完了. 点分树有一个 ...

  3. iOS -- Effective Objective-C 阅读笔记 (2)

    1: 多用类型常量, 少用 #define 预处理指令 #define 预处理指令会把碰到的所有 指定名称 一律换位 定义的内容, 这样的话, 假设此指令在某个头文件中, 那么所有引入这个头文件的代码 ...

  4. SpringBoot集成Shiro

    Shiro是一个安全框架,控制登陆,角色权限管理(身份认证.授权.回话管理.加密) Shiro不会去维护用户,维护权限:这些需要通过realm让开发人员自己注入 1.在pom.xml中引入shiro的 ...

  5. css+js杂记

    css的盒子模型分:ie盒子模型和标准盒子模型 区别: 2.选择器 .id选择器(# myid) .类选择器(.myclassname) .标签选择器(div, h1, p) .相邻选择器(h1 + ...

  6. vue指令

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <title>指令 ...

  7. CentOS安装jdk的三种方法

    方法一:手动解压JDK的压缩包,然后设置环境变量 方法二:用yum安装JDK,(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的 ...

  8. K8s-Pod

    一:Pod-资源对象概述 Pod是k8s系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在k8s上运行容器化应用的资源对象,其他的资源对象都是用来支撑或者扩展P ...

  9. tomcat和server安装和操作

    servers的创建 最后一步:ctrl+s

  10. python练习册0005

    第 0005 题:你有一个目录,装了很多照片,把它们的尺寸变成都不大于 iPhone5 分辨率的大小. 本题用了几个os模块的命令, import os from PIL import Image p ...