资源简介
可进行excel的导出 支持图片的导出,亲自使用的整合到了一起
代码片段和文件信息
package com.hibro.util;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.util.HSSFColor;
import org.apache.poi.ss.util.CellRangeAddress;
import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletResponse;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* Created by admin on 2018/8/24.
*/
public class CommonExcel {
//显示的导出表的标题
private String title;
//导出表的列名
private String[] rowName;
//导出的文件名
private String fileName;
private Listject[]> dataList = new ArrayListject[]>();
private HttpServletResponse response;
/** 时间格式:默认为yyyy-MM-dd */
private String DATE_PATTERN = “yyyy-MM-dd“;
/** 图片宽度,默认为:100 */
private int IMAGE_WIDTH = 30;
/** 图片高度,默认为:50 */
private int IMAGE_HEIGHT = 5;
/** 单元格的最大宽度 */
private int[] maxWidth;
/**
* 单页支持最多数据列:超过65534会出错
* 若数据列多余65534则需要通过MORE_EXCEL_FLAG、MORE_SHEET_FLAG来区别生成多个Excel、还是sheet
*/
private int maxRowCount = 2500;
/** 大量数据,多个Excel标识---0001 */
private String MORE_EXCEL_FLAG = “0001“;
/** 大量数据,多个sheet标识---0001 */
private String MORE_SHEET_FLAG = “0002“;
//构造方法,传入要导出的数据
public CommonExcel(String title String[] rowName Listject[]> dataList HttpServletResponse response String fileName) {
this.dataList = dataList;
this.rowName = rowName;
this.title = title;
this.response = response;
this.fileName = fileName;
}
/*
* 导出数据
*/
public void downloadExcel() throws Exception {
try {
HSSFWorkbook workbook = new HSSFWorkbook(); // 创建工作簿对象
HSSFSheet sheet = workbook.createSheet(title); // 创建工作表
// 产生表格标题行
HSSFRow rowm = sheet.createRow(0);
HSSFCell cellTiltle = rowm.createCell(0);
//sheet样式定义【getColumnTopstyle()/getstyle()均为自定义方法 - 在下面 - 可扩展】
HSSFCellstyle columnTopstyle = this.getColumnTopstyle(workbook);//获取列头样式对象
HSSFCellstyle style = this.getstyle(workbook); //单元格样式对象
sheet.addMergedRegion(new CellRangeAddress(0 1 0 (rowName.length - 1)));
cellTiltle.setCellstyle(columnTopstyle);
cellTiltle.setCellValue(title);
// 定义所需列数
int columnNum = rowName.length;
HSSFRow rowRowName = sheet.createRow(2); // 在索引2的位置创建行(最顶端的行开始的第二行
- 上一篇:MainActivity.java
- 下一篇:H5活体验证页面,测试demo
相关资源
- android图片压缩工具类分享
- 顺丰丰桥接口开发详细教程源码含下
- 最新数据验证工具类java,身份证、手
- 敏感信息脱敏源码和jar包
- Rabbitmq工具类,java工具类RabbitmqUtil
- JavaWeb中文件上传最强工具类
- sm2-sm4国密算法工具包及工具类245790
- java httpclient https或http及文件中转上传
- java_poi导入excel通用工具类
- Android 通过WebService进行网络编程,使
- freemaker导出word的doc_docx_带动态图片及
- Java把html生成pdf (xhtmlrenderer)
- aspose.words for java文档转换工具类
- Mybatis分页插件和逆向工程工具类
- android webdav工具类
- java 对象与json字符串互相转换工具类
- 工作5年精心整理_Java常用工具类源码
- Java常用工具类大全,工作5年精心整理
- 手机号归属地查询JAVA工具类
- java实现扫一扫封装的工具类
- android高德地图封装工具类
- 使用 Java 实现的压缩/解压 ZIP 文件的
- LogUtil工具类
- Android-CameraKit将一个最难的CameraAndro
- Java 敏感词过滤,Java 敏感词替换,
- httputil工具类
- MQ工具类java
- Java证书打印工具类
- JAVA时间工具类计算法定工作日工时等
- Quartz 2.2.1 工具类
评论
共有 条评论