【工具类】Excel导出那些事儿(三)

2024-08-26 02:08
文章标签 工具 excel 导出 事儿

本文主要是介绍【工具类】Excel导出那些事儿(三),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

      导出Excel又有了新的需求,之前都是直接导出list<T>,现需要导出List<map>,并且需要动态创建表头。如下:

【工具类】

引用jxl包

 

public class ListMapExportExcelUtil {/*** 写excel.** @param fileName         文件名* @param sheetName        sheet名* @param mapKeyListString map的key,表头们* @param dataListMap      数据*/public static void writeExcel(HttpServletResponse response,String fileName,String sheetName,List<String> mapKeyListString, List<Map<String, Object>> dataListMap) throws EngineException {WritableWorkbook wwb = null;OutputStream os = null;try {os = response.getOutputStream();wwb = Workbook.createWorkbook(os);WritableSheet ws = wwb.createSheet(sheetName, 0);int size = mapKeyListString.size();insertHead(ws, mapKeyListString);int rownum = 1;if ((dataListMap != null) && (dataListMap.size() > 0)) {for (int i = 0; i < dataListMap.size(); i++) {LogUtil.getAppLogger().info("当前行数为:{}",i);Map map = (Map) dataListMap.get(i);for (int j = 0; j < mapKeyListString.size(); j++) {if(map.get(mapKeyListString.get(j)) != null ){insertCell(ws, null, rownum, j, map.get(mapKeyListString.get(j)).toString());}else{insertCell(ws, null, rownum, j, " ");}}rownum++;}}SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");response.setContentType("application/msexcel");response.addHeader("Content-disposition", "attachment;" +"filename=" + fileName + "_" + sdf.format(new Date()) + ".xls");wwb.write();} catch (Exception e) {throw new Exception(e);} finally {try {if (wwb != null)wwb.close();if (os != null)os.close();} catch (Exception e) {throw new Exception(e);}}}//单元格private static void insertCell(WritableSheet writableSheet, WritableCellFormat writableCellFormat, int row, int column, String name) throws RowsExceededException, WriteException {WritableCell cell = new Label(column, row, name);if (writableCellFormat != null) {cell.setCellFormat(writableCellFormat);}writableSheet.addCell(cell);}//表头private static void insertHead(WritableSheet writableSheet, List<String> titleColumn) throws RowsExceededException, WriteException, EngineException {WritableFont writableFont = new WritableFont(WritableFont.TIMES, 12, WritableFont.BOLD);WritableCellFormat writableCellFormat = new WritableCellFormat(writableFont);try {writableCellFormat.setAlignment(Alignment.CENTRE);} catch (WriteException e) {throw new EngineException(CodeEnum.PARAM_FORMAT_ERROR.getCode(),CodeEnum.PARAM_FORMAT_ERROR.getMessage(),e);}for (int i = 0; i < titleColumn.size(); i++) {WritableCell cell = new Label(i, 0, titleColumn.get(i));cell.setCellFormat(writableCellFormat);writableSheet.addCell(cell);}}
}

 

 

 

 

 

这篇关于【工具类】Excel导出那些事儿(三)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1107248

相关文章

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

python实现pdf转word和excel的示例代码

《python实现pdf转word和excel的示例代码》本文主要介绍了python实现pdf转word和excel的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一、引言二、python编程1,PDF转Word2,PDF转Excel三、前端页面效果展示总结一

基于C#实现PDF文件合并工具

《基于C#实现PDF文件合并工具》这篇文章主要为大家详细介绍了如何基于C#实现一个简单的PDF文件合并工具,文中的示例代码简洁易懂,有需要的小伙伴可以跟随小编一起学习一下... 界面主要用于发票PDF文件的合并。经常出差要报销的很有用。代码using System;using System.Col

redis-cli命令行工具的使用小结

《redis-cli命令行工具的使用小结》redis-cli是Redis的命令行客户端,支持多种参数用于连接、操作和管理Redis数据库,本文给大家介绍redis-cli命令行工具的使用小结,感兴趣的... 目录基本连接参数基本连接方式连接远程服务器带密码连接操作与格式参数-r参数重复执行命令-i参数指定命

Python实现将实体类列表数据导出到Excel文件

《Python实现将实体类列表数据导出到Excel文件》在数据处理和报告生成中,将实体类的列表数据导出到Excel文件是一项常见任务,Python提供了多种库来实现这一目标,下面就来跟随小编一起学习一... 目录一、环境准备二、定义实体类三、创建实体类列表四、将实体类列表转换为DataFrame五、导出Da

Python数据处理之导入导出Excel数据方式

《Python数据处理之导入导出Excel数据方式》Python是Excel数据处理的绝佳工具,通过Pandas和Openpyxl等库可以实现数据的导入、导出和自动化处理,从基础的数据读取和清洗到复杂... 目录python导入导出Excel数据开启数据之旅:为什么Python是Excel数据处理的最佳拍档

使用Python处理CSV和Excel文件的操作方法

《使用Python处理CSV和Excel文件的操作方法》在数据分析、自动化和日常开发中,CSV和Excel文件是非常常见的数据存储格式,ython提供了强大的工具来读取、编辑和保存这两种文件,满足从基... 目录1. CSV 文件概述和处理方法1.1 CSV 文件格式的基本介绍1.2 使用 python 内

Python使用Pandas库将Excel数据叠加生成新DataFrame的操作指南

《Python使用Pandas库将Excel数据叠加生成新DataFrame的操作指南》在日常数据处理工作中,我们经常需要将不同Excel文档中的数据整合到一个新的DataFrame中,以便进行进一步... 目录一、准备工作二、读取Excel文件三、数据叠加四、处理重复数据(可选)五、保存新DataFram

Python pyinstaller实现图形化打包工具

《Pythonpyinstaller实现图形化打包工具》:本文主要介绍一个使用PythonPYQT5制作的关于pyinstaller打包工具,代替传统的cmd黑窗口模式打包页面,实现更快捷方便的... 目录1.简介2.运行效果3.相关源码1.简介一个使用python PYQT5制作的关于pyinstall