• 大小: 5KB
    文件类型: .java
    金币: 1
    下载: 0 次
    发布日期: 2021-06-06
  • 语言: Java
  • 标签: pio  导出  

资源简介

/** * 这是一个通用的方法,利用了JAVA的反射机制,可以将放置在JAVA集合中并且符号一定条件的数据以EXCEL 的形式输出到指定IO设备上 * * @param title * 表格标题名 * @param headers * 表格属性列名数组 * @param dataList * List格式的数据 * @param ctxPath * request获取的目录 * @param outName * 需要输出的文件名称 */

资源截图

代码片段和文件信息


import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellstyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;





public class ExportExcelUtil {

/** 
     * 这是一个通用的方法,利用了JAVA的反射机制,可以将放置在JAVA集合中并且符号一定条件的数据以EXCEL 的形式输出到指定IO设备上 
     *  
     * @param title 
     *            表格标题名 
     * @param headers 
     *            表格属性列名数组 
     * @param dataList 
     *            List格式的数据 
     * @param ctxPath 
     *            request获取的目录
     * @param outName 
     *            需要输出的文件名称
     */  
    public void exportExcel(String title String[] headersString[] mapNames List dataListString ctxPath String outName){  
        // 声明一个工作薄  
        HSSFWorkbook workbook = new HSSFWorkbook();
        // 生成一个表格  
        HSSFSheet sheet = workbook.createSheet(title);
        // 设置表格默认列宽度为15个字节  
        sheet.setDefaultColumnWidth((short)15);
        // 生成一个样式  
        HSSFCellstyle style = workbook.createCellstyle();
        // 设置这些样式  
        style.setAlignment(HSSFCellstyle.ALIGN_CENTER);
  
        // 产生表格标题行  
        HSSFRow row = sheet.createRow(0);
        for(short i = 0; i < headers.length; i++){
            HSSFCell cell = row.createCell(i);
            cell.setCellstyle(style);
            cell.setCellValue(headers[i]);
        } 
        
        //获取数据集的值
        for(int n=0;n         Map dataMap = dataList.get(n);
         row = sheet.createRow(n+1);
         for(short i = 0; i < mapNames.length; i++){
         HSSFCell cell = row.createCell(i);
             cell.setCellstyle(style);
         object value = dataMap.get(mapNames[i]);
         // 判断值的类型后进行强制类型转换  
                String textValue = null;
                if (value instanceof Date){  
                    Date date = (Date) value;  
                    SimpleDateFormat sdf = new SimpleDateFormat(ConfigUtils.DATEFORMATE

评论

共有 条评论