SpringBoot之下载excel模板

@GetMapping(value = "/downloadTemplate")
    public void downFrozenTemplate(HttpServletRequest request, HttpServletResponse response) throws Exception {
        String fileName = "模板"+ new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xlsx";
        ServletOutputStream out;
        response.setCharacterEncoding("UTF-8");
        response.setContentType("content-type:octet-stream");
        //文件在项目中的存放路径
        String filePath = getClass().getResource("/templates/template1.xlsx").getPath();
        String userAgent = request.getHeader("User-Agent");
        if (userAgent.contains("MSIE") || userAgent.contains("Trident")) {
            fileName = java.net.URLEncoder.encode(fileName, "UTF-8");
        } else {
            // 非IE浏览器的处理:
            fileName = new String((fileName).getBytes("UTF-8"), "ISO-8859-1");
        }
        filePath = URLDecoder.decode(filePath, "UTF-8");
        response.setHeader("Content-Disposition", "attachment;fileName=" + fileName);
        FileInputStream inputStream = new FileInputStream(filePath);
        out = response.getOutputStream();
        int b = 0;
        byte[] buffer = new byte[1024];
        while ((b = inputStream.read(buffer)) != -1) {
            //写到输出流(out)中
            out.write(buffer, 0, b);
        }
        inputStream.close();
        if (out != null) {
            out.flush();
            out.close();
        }
    }

原文地址:https://www.cnblogs.com/zengnansheng/p/11584523.html

时间: 2024-10-30 08:51:40

SpringBoot之下载excel模板的相关文章

download下载excel模板的代码

<%-- 直接在JSP页面中进行文件下载的代码(改 Servlet 或者 JavaBean 的话自己改吧), 支持中文附件名(做了转内码处理). 事实上只要向 out 输出字节就被认为是附件内容, 不一定非要从文件读取原始数据, 从数据 库中读取也可以的. 需传三个参数 newname,name,path --%> <%@ page contentType=" text/html; charset=utf-8" pageEncoding="utf-8&quo

java实现赋值excel模板,并在新文件中写入数据,并且下载

/** * 生成excel并下载 */ public void exportExcel(){ File newFile = createNewFile(); //File newFile = new File("d:/ss.xls"); //新文件写入数据,并下载***************************************************** InputStream is = null; HSSFWorkbook workbook = null; HSSFSh

SpringMVC导入Excule并解析Excule中的数据以及下载Excule模板

把Excule导入,并把Excule中的数据解析出来,包装成对象的属性,保存在数据库中: Excule中的数据: 1.web.xml的配置: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/java

java读取WORD/EXCEL模板转换生成新WORD/EXCEL文档

原文:java读取WORD/EXCEL模板转换生成新WORD/EXCEL文档 代码下载地址:http://www.zuidaima.com/share/1550463239670784.htm 可以通过预先设置指定的excel和word模板,通过替换文档里面指定的标志来生成新的excel和word文档.excel的部分只是实现了简单的方法.word部分可以支持word2003和word2007格式.建议word使用07及其以上. 其实excel部分标签和jstl很像,而且支持循环等.word就支

C# 导出数据到Excel模板中(转)

今天做报表的时候遇到了多表头的问题,而且相应的报表的格式都一样.所以就采用了报表模板的方式来进行. 第一步:在开发的当前项目中引入:Microsoft.Office.Interop.Excel:System.Reflection:命名空间. 第二步:获取要导出的数据: 第三步:创建一个Excel 应用程序: //需要添加 Microsoft.Office.Interop.Excel引用 Microsoft.Office.Interop.Excel.Application app = new Mi

利用POI将数据导出到EXCEL模板

在开发中导出导入数据,我们是经常用到的,近期,公司开发中需要将指定数据导入到用户给定的EXCEL模板中,并根据要求合并单元格,在这里,我写了个简单的demo,可以概括我所用到的知识点,以供有需要的朋友借鉴. 相关DEMO下载:PoiTest public class Test { public static void main(String[] args) { try{ FileInputStream fis = new FileInputStream("d:/model.xlsx")

OLE 下载SWM0模板

用OLE 下载 SWM0里面的模板到本地,并进行数据填充 .这里好像上传不了模板 直接上代码了. REPORT ZJ_TE1. INCLUDE OLE2INCL. " 时间: 2015/01/05 BY:CHARLES " 描述:通过OLE下载服务器文件模板到本地 DATA:GC_FIEL TYPE STRING. "下载路径 DATA GC_NAME TYPE STRING. " 文件名 DATA: EXCEL TYPE OLE2_OBJECT, WORKBOOK

jsp下载excel文件

jsp下载excel文件的的实现方法很多,今天也遇到这个问题,乱敲了一阵,终于搞定了,记下来和朋友们分享吧. 假设需要下载excel文件的jsp页面名为:down.jsp 对应的后台action名为:downExcel.java(用struts实现,其他框架也类似) 在downExcel.java的添加downAction方法,实现下载步骤 public ActionForward downAction(ActionMapping mapping, ActionForm form,    Htt

npoi根据html字符串动态生成excel模板

npoi多表头数据导出目前有两种方法: 其一是根据excel模板来导出数据 其二是npoi动态创建多表头 上面的两种方法我都用过今天我介绍的是根据html字符串来创建excel,但是要设置响应的属性, 其实也就是对应 npoi CellRangeAddress 方法所需要的四个参数(firstrow,lastrow,firstcol,lastcol),这四个参数代表的意思是 单元格的开始行索引,结束行索引,开始列索引,结束列索引. 先要有table表头的字符串然后用HtmlAgilityPack