SpringMVC 导入导出Excel文件
/**
* 下载Excel模板 创建一个新的文件用于下载,创建的文件放在缓存中
*
* @param request
* @param response
*/
/*
* @RequestMapping("/get_Sb_yys_sgyyqk_cj") public void
* get_Sb_yys_sgyyqk_cj(HttpServletRequest request, HttpServletResponse
* response) { try { // 输出流 OutputStream os = new
* FileOutputStream(filePath); // 工作区 HSSFWorkbook wb = new HSSFWorkbook();
* // 工作区名 HSSFSheet sheet = wb.createSheet("烟叶税采集模板");
* sheet.autoSizeColumn(1, true); // 设置自适应宽度,高版本的POI才有用
*
* // 创建表头 HSSFRow row = sheet.createRow(0); row.setHeight((short) 600);//
* 设定行的高度
*
* // 设置单元格内容格式 HSSFCellStyle style = wb.createCellStyle();
* style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 水平布局:居中
* style.setWrapText(true);// 自动换行
*
* // 设置单元格内容格式 HSSFCellStyle style1 = wb.createCellStyle(); //
* 测试发现excel不支持精确到秒的日期格式,换成日期就够 //
* style1.setDataFormat(HSSFDataFormat.getBuiltinFormat
* ("yyyy/MM/dd hh:mm:ss"));
* style1.setDataFormat(HSSFDataFormat.getBuiltinFormat("yyyy-MM-dd"));
* style1.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 水平布局:居中
* style1.setWrapText(true);// 自动换行
*
* HSSFCell cell = row.createCell(0); cell.setCellStyle(style);
* cell.setCellValue("社会信用代码"); sheet.autoSizeColumn((short) 1); //
* sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 2)); // //
* 合并单元格(startRow,endRow,startColumn,endColumn)
*
* cell = row.createCell(1); cell.setCellStyle(style);
* cell.setCellValue("收购数量");
*
* cell = row.createCell(2); cell.setCellStyle(style);
* cell.setCellValue("单价");
*
* cell = row.createCell(3); cell.setCellStyle(style);
* cell.setCellValue("烟叶等级代码"); sheet.autoSizeColumn((short) 3); // 调整第3列宽度
*
* cell = row.createCell(4); cell.setCellStyle(style1);
* cell.setCellValue("收购日期(数据格式为yyyy-MM-dd,如:2017-12-11表示2017年12月11日)");
* sheet.autoSizeColumn((short) 4); // 调整第四列宽度
*
* // 写文件 wb.write(os); // 关闭输出流 os.close(); download(filePath, response); }
* catch (Exception e) { e.printStackTrace(); } }
*//**
* 此方法可以提出去公用
*
* @param path
* @param response
*/
/*
* private void download(String path, HttpServletResponse response) { try {
* // path是指欲下载的文件的路径。 File file = new File(path); // 取得文件名。 String filename
* = file.getName(); // 以流的形式下载文件。 InputStream fis = new
* BufferedInputStream(new FileInputStream(path)); byte[] buffer = new
* byte[fis.available()]; fis.close(); // 清空response response.reset(); //
* 设置response的Header response.addHeader("Content-Disposition",
* "attachment;filename=" + new String(filename.getBytes()));
* response.addHeader("Content-Length", "" + file.length()); OutputStream
* toClient = new BufferedOutputStream( response.getOutputStream());
* response.setContentType("application/vnd.ms-excel;charset=utf-8");
* toClient.write(buffer); toClient.flush(); toClient.close();
* if(file.exists()){ //删除缓存的文件 file.delete(); } } catch (IOException ex) {
* ex.printStackTrace(); } }
*/
SpringMVC 导入导出Excel文件的更多相关文章
- 【转】 (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- ASP.NET Core导入导出Excel文件
ASP.NET Core导入导出Excel文件 希望在ASP.NET Core中导入导出Excel文件,在网上搜了一遍,基本都是使用EPPlus插件,EPPlus挺好用,但商用需要授权,各位码友若有好 ...
- 导入导出Excel文件
搭建环境 先新建web project ,然后Add Struts Capabilties: 下载导入导出Excel所需的jar包: poi-3.8-20120326.jar包 : http:// ...
- java中使用poi导入导出excel文件_并自定义日期格式
Apache POI项目的使命是创造和保持java API操纵各种文件格式基于Office Open XML标准(OOXML)和微软的OLE复合文档格式(OLE2)2.总之,你可以读写Excel文件使 ...
- C# 导入导出excel文件案例
个人总结导出excel报表的案例: //导出报表 protected void btnExport_Click(object sender, EventArgs e) { List<ProOut ...
- java导入导出Excel文件
package poi.excel; import java.io.IOException; import java.io.InputStream; import java.io.OutputStre ...
- 简单回顾NPOI导入导出excel文件
当前环境.net4.0 去官方下下载: NOPI官网 关于NOPI的详细,这里就不再介绍. 在项目中,我们只需引入 NPOI.dll 就可以了. 接下来..................... ...
- php中导入导出excel的原理
在php中我们要经常导入导出excel文件,方便后台管理.那么php导入和导出excel的原理到底是什么呢?excel分为两大版本excel2007(后缀.xlsx).excel2003(后缀.xls ...
随机推荐
- textarea的实现
由于限制字数是用原有的 maxlength会有问题,所以用一般会用js控制,今天用到三种: (一)html: <body> <form name=myform action=&quo ...
- vue路由配置
1.安装 npm install vue-router --save / cnpm install vue-router --save 2.引入并 Vue.use(VueRouter) (main.j ...
- 跨页面传值之Cookie
3.客户端再次访问某站点 浏览器将携带Cookie信息的指令,将获得的信息参与编译. 4.将含有Cookie信息参与编译的页面发回给浏览器 其中如果有相关的设置Cookie的指令.将再次通过浏览器,写 ...
- 【转】sqlserver字符串拆分(split)方法汇总
Java..net等开发工具具有split功能,最近在Sqlserver中碰到这个需求. 方法1:动态SQL法 ),) set @string='1,2,3,4,5,6,7,8,9,10' set @ ...
- 当Activity出现Exception时是如何处理的?
1.ActivityThread 2.PerformStop 在这里会调用mWindow.closeAllPanels(),从而关闭OptionMenu, ContextMenu.如果自己通过Wind ...
- python函数名称空间与作用域、闭包
一.命名空间概念 1.命名空间(name space) 名称空间是存放名字的地方. 若变量x=1,1存放在内存中,命名空间是存放名字x.x与1绑定关系的地方. 2.名称空间加载顺序 python te ...
- SCI收录的期刊查询
SCI 收录的期刊查询(动态) 1.Science Citation Index (SCI)收录期刊查询地址:http://www.isinet.com/cgi-bin/jrnlst/jlopti ...
- python在Android下的自动化测试用法
# This Python file uses the following encoding: utf-8from com.android.monkeyrunner import MonkeyRunn ...
- Android学习——ViewPager的使用(三)
这一节来介绍一下在ViewPager中常用到的一个控件,标题栏. 标题栏分为PagerTabStrip和PagerTitleStrip两种,用法类似,这里介绍第一种. 具体做法 在layout文件中的 ...
- 再学UML-深入浅出UML类图(五)
实例分析3——售票机控制程序 某运输公司决定为新的售票机开发车票销售的控制软件.图I给出了售票机的面板示意图以及相关的控制部件. 图I 售票机面板示意图 售票机相关部件的作用如下所述: (1) 目 ...