package com.bonus.core; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.UnsupportedEncodingException; import java.math.BigDecimal; import java.net.URLEncoder; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; import org.apache.poi.hssf.usermodel.HSSFDataFormat; import org.apache.poi.hssf.usermodel.HSSFFont; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.DateUtil; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; /** * 导出表格工具类 * @author lvjilong * */ public class ExcelUtils { private static Logger logger=Logger.getLogger(ExcelUtils.class); //excel默认宽度; private static int width = 256*14; //默认字体 private static String excelfont = "微软雅黑"; /** * * @param excelName 导出的EXCEL名字 * @param sheetName 导出的SHEET名字 当前sheet数目只为1 * @param headers 导出的表格的表头 * @param ds_titles 导出的数据 map.get(key) 对应的 key * @param ds_format 导出数据的样式 * 1:String left; * 2:String center * 3:String right * 4 int right * 5:float ###,###.## right * 6:number: #.00% 百分比 right * @param widths 表格的列宽度 默认为 256*14 * @param data 数据集 List * @param response * @throws IOException */ @SuppressWarnings("deprecation") public static void export(String excelName, String sheetName,String[] headers,String[] ds_titles,int[] ds_format,int[] widths, List> data ,HttpServletRequest request, HttpServletResponse response) throws IOException { HttpSession session = request.getSession(); session.setAttribute("state", null); if(widths==null){ widths = new int[ds_titles.length]; for(int i=0;i styleList = new ArrayList(); for (int i = 0; i map = data.get(i); for (int j = 0; j > extractExcelFileInfo(String filePath) { List> info =new ArrayList>(); List list = null; InputStream is; try { is = new FileInputStream(filePath); Workbook wk = WorkbookFactory.create(is); Sheet st = wk.getSheetAt(0); int rows = st.getPhysicalNumberOfRows(); int coloumNum=st.getRow(1).getPhysicalNumberOfCells(); Row row = null; Cell cell = null; boolean flag = false; for(int i = 1;i(); row = st.getRow(i); if(row != null) { for(int j = 1;j