关于jsp页面转换成excel格式下载遇到问题及解决
jsp页面转成excel格式的实现思路:
1.使用poi包:poi-bin-3.9-20121203
下载连接地址:http://www.apache.org/dyn/closer.cgi/poi/release/bin/poi-bin-3.9-20121203.tar.gz
import org.apache.poi.hssf.usermodel.*;
这个包可以帮助实现下载excel模版的设计,简单易用,功能也非常强大。
HSSFWorkbook workBook = new HSSFWorkbook();//是操作Excel2003的版本,扩展名是xls
HSSFSheet sheet = workBook.createSheet();//创建工作簿
HSSFRow row1 = sheet.createRow(1);//创建一行
HSSFCell cell0 = row1.createCell(0);//创建单元格
cell0.setCellValue("对账单ID:");//给单元格赋值
2.将创建的excel文档转换成需要输出的流:可以是文件流放在硬盘中,也可以是输出流输出到浏览器供下载。 ◆ 文件流:FileOutputStream
FileOutputStream fos = new FileOutputStream("F://workbook.xls");
workBook.write(fos);
fos.close();
◆ 输出流 :response.getOutputStream()
response.reset();
response.setContentType("application/vnd.ms-excel;charset=gbk");
response.setHeader("Content-Disposition", "attachment;filename=account.xls");
OutputStream out = response.getOutputStream();
workBook.write(out);
out.close();
◆ tip:
*response.reset();清除首部的空白行
* getResponse的getWriter()方法连续两次输出流到页面的时候,第二次的流会包括第一次的流,
* 所以可以使用response.reset或者resetBuffer的方法。
* resetBuffer方法与reset方法的区别是,头和状态码没有清除。
如果发现这样设置后浏览器端并没有弹出【文件另存为】选择路径窗口,请检查下前面代码是否出现:
1.response.setContentType("text/html;charset=UTF-8");//设置编码格式
2.PrintWriter out = response.getWriter();导致无法确定输出流
3、excel文件名为中文时乱码或者出现未知文件类型错误时,考虑用URLEncoder对文件名进行转码

String name = java.net.URLEncoder.encode(fileName, "utf-8");
response.setContentType("application/vnd.ms-excel;charset=utf-8");
response.setHeader("Content-Disposition", "attachment;filename="+name.toString()+".xls");
OutputStream out = response.getOutputStream();
workBook.write(out);
out.close();
关于jsp页面转换成excel格式下载遇到问题及解决的更多相关文章
- JavaScript实现html页面转换成图片格式
本文提供三个JavaScript插件,并提供对应GitHub地址,自行查看使用方法: 1)dom-to-image:dom-to-image 2)html2canvas:html2canvas 3)r ...
- PDF文件转换成Excel表格的操作技巧
我们都知道2007以上版本的Office文档,是可以直接将文档转存为PDF格式文档的.那么反过来,PDF文档可以转换成其他格式的文档吗?这是大家都比较好奇的话题.如果可以以其他格式进行保存,就可以极大 ...
- ABBYY如何把图片转换成pdf格式
在制作工作文件的时候,有时候会遇到需要进行文件格式转换的情况,比较常见的文件格式转换就包含了Office与pdf格式之间的转换.但除此之外,图片与pdf格式也是可以进行转换的,那么图片要怎么操作,才能 ...
- 【jsPDF】jsPDF插件实现将html页面转换成PDF,并下载,支持分页
1.目的:在前段是 jQuery库 或者 VUE库 或者两者混合库,将html 页面和数据 转换成PDF格式并下载,支持分页 1.项目背景: 对客户报修记录进行分类统计,并生成各种饼图.柱状图.线性图 ...
- 【转】qlv文件如何转换成mp4 怎样把下载好的qlv格式视频转换成MP4格式
狸窝 复制 收藏 保存到桌面 快速找教程方案 反馈需求 社会主义核心价值观 客服QQ41442901 马上注册 升级VIP 对于视频文件之间的转换问题,我也已经是无力吐槽了,每个 ...
- 分别用Excel和python进行日期格式转换成时间戳格式
最近在处理一份驾驶行为方面的数据,其中要用到时间戳,因此就在此与大家一同分享学习一下. 1.什么是时间戳? 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01 ...
- 将数字转换成Excel表头格式的字母序号
/** * 从0开始算起,0-25转A-Z * @param num * @return Character.valueOf((char)((num-1)+65))+&quo ...
- JAVA:借用OpenOffice将上传的Word文档转换成Html格式
为什么会想起来将上传的word文档转换成html格式呢?设想,如果一个系统需要发布在页面的文章都是来自word文档,一般会执行下面的流程:使用word打开文档,Ctrl+A,进入发布文章页面,Ctrl ...
- 在JSP页面中输出JSON格式数据
JSON-taglib是一套使在JSP页面中输出JSON格式数据的标签库. JSON-taglib主页: http://json-taglib.sourceforge.net/index.html J ...
随机推荐
- swift3.0 coreData的使用-日记本demo
效果 需求分析 基于官方MasterDetail模板,官方写了很多复杂的coredata逻辑,在此基础上快速开发简单的日记本程序. - 主要功能:增.删.改.查 - 界面用默认的界面,将detail页 ...
- perl的INC设置
perl中的INC变量中包含了所有的perl module的查找路径. 可以使用perl -V 来查看INC的值. 1)默认地INC如下: @INC: C:/Perl/site/lib C ...
- 用Eclipse生成JPA元模型
在JPA criteria 动态查询中,有个"元模型"的东西,它是根据"实体"类动态生成的一个类,它的主要作用是实现JPA criteria查询的"类 ...
- Vue模板内容
前面的话 如果只使用Vue最基础的声明式渲染的功能,则完全可以把Vue当做一个模板引擎来使用.本文将详细介绍Vue模板内容 概述 Vue.js使用了基于HTML的模板语法,允许声明式地将DOM绑定至底 ...
- 编写一个类,其中包含一个排序的方法Sort(),当传入的是一串整数,就按照从小到大的顺序输出,如果传入的是一个字符串,就将字符串反序输出。
namespace test2 { class Program { /// <summary> /// 编写一个类,其中包含一个排序的方法Sort(),当传入的是一串整数,就按照从小到大的 ...
- NYOJ--714--Card Trick
/* Name: NYOJ--714--Card Trick Author: shen_渊 Date: 19/04/17 19:35 Description: 早上训练的第六届河南省程序设计大赛的题, ...
- 阿里消息队列中间件 RocketMQ 源码分析 —— Message 拉取与消费(上)
- POI通过模板导出EXCEL文件
一般的EXCEL导出使用POI先创建一个HSSFWorkbook,然后通过不断创建HSSFRow,HSSFCell后设置单元格内容便可以完成导出. 这次在项目中需要用到模板,导出的内容包括(1.模板中 ...
- C语言内存申请与使用
1. 使用malloc申请一块空间,模拟KV存储的一个节点存储数据信息. #include<stdio.h> #include <unistd.h> #include < ...
- C/C++ 知识点---sizeof使用规则及陷阱分析(网摘)
C/C++ 知识点---sizeof使用规则及陷阱分析 原文出处:[胖奇的专栏] 1.什么是sizeof 首先看一下sizeof在msdn上的定义: The sizeof keyword gi ...