public int createDataExcel(DataQueryParameters dataQueryParameters,String newfileName,String fileName,String[] headerKey, boolean showField ) throws IOException{
FileOutputStream out = null;
// String newfileName = fileName+"_"+ DateUtils.getTodayStr("yyyy-MM-dd")+".xlsx";
logger.info("开始进入数据文件导出********");
int recordCount = 0;
try {
//拼接临时文件保存地址
String flieAddress = excleAddress+newfileName;
logger.info("文件保存地址:"+flieAddress);
SXSSFWorkbook wb = new SXSSFWorkbook(Integer.valueOf(batchNum));//内存中保留 10000 条数据,以免内存溢出,其余写入 硬盘
Sheet sheet = wb.createSheet("0");
sheet.setDefaultColumnWidth(18);
wb.setSheetName(0, fileName);
//隐藏列:"MobileTel","Email"
logger.info("开始根据权限得到对应的表头列*********");
List<String> headers = this.getHeadList(headerKey, showField);
//创建excle导出文件的表头列
logger.info("开始创建EXLCE表头列*************");
this.createExcleHeader(sheet, headers, wb);
long startTime = System.currentTimeMillis();
//组装Exlce体数据
logger.info("开始组装EXCLE数据信息**************");
recordCount = this.createExcleBody(dataQueryParameters, sheet, headers, wb);
logger.info("数据导出耗时:"+(System.currentTimeMillis() - startTime));
out = new FileOutputStream(new File(flieAddress));
wb.write(out);
} catch (IOException e) {
e.printStackTrace();
logger.error("导出EXLCE数据异常",e);
}finally{
if(null != out){
out.close();
}
}
return recordCount;
}
if(dataCount > 0){
for (int i = 0; i < listData.size(); i++) {
Row datarow = sheet.createRow(sheetRowIndex+i);
activityLeadsCommonModel = listData.get(i);
for (int j = 0; j < headers.size(); j++) {
Cell cell = datarow.createCell(j);
cell.setCellType(Cell.CELL_TYPE_STRING);
cell.setCellValue(activityLeadsCommonModel.getValueByBeanName(headers.get(j)).toString());//写入内容
}
}
}
private void createExcleHeader(Sheet sheet,List<String> headers,SXSSFWorkbook wb){
Row clumrow = sheet.createRow(0);
List<String> newCellList = ExportExcelUtil.replaceCellName(headers);
CellStyle cell_Style = (CellStyle ) wb .createCellStyle();// 设置字体样式
cell_Style.setWrapText(true); // 设置为自动换行
cell_Style.setAlignment(CellStyle.ALIGN_CENTER);
//设置背景颜色
cell_Style.setFillForegroundColor(IndexedColors.BRIGHT_GREEN.getIndex());
cell_Style.setFillPattern(CellStyle.SOLID_FOREGROUND);
for (int m = 0; m < newCellList.size(); m++) {
Cell cell = clumrow.createCell(m);
cell.setCellStyle(cell_Style);
cell.setCellValue(newCellList.get(m));//写入内容
}
}
分享到:
相关推荐
java导出Excel 时候 相同行合并(可合并多列); 已测试通过;
java导出excel超过65536条记录出错 java导出excel超过65536条记录出错 java导出excel超过65536条记录出错 java导出excel超过65536条记录出错
java导出excel POI jar包 java代码地址http://blog.csdn.net/awenluck/article/details/51488537
java导出excel
该工具类实现java导出树形结构的方法,并未采用excel分组功能实现,而是根据树节点显示层级设置excel样式。针对easyUi,treeGrid开发的导出excel功能。方法简便实用、性强、通俗易懂。项目中亲测,no problem。
java导出excel例子,使用的是poi,可以分sheet导出,可以导出txt
java导出excel2007的实现,含2003格式。
资源描述:一个使用java做的导出数据,并且可以在excel表生成折线图的工具类,使用简单操作方便。
本资源实现了Excel的简单导出实例,同时也实现了导出Excel复合表头的简单实例,适合一些需要用到导出Excel技术的初学者。
java导出excel方式,含POI3.10jar包,都可以正常应用到项目中。
Java导出Excel文件(97--2003) 含jar包,注释全,可直接运行。
* 导出excel(利用反射机制) * String[] title = {"订单号","商品名称","商品价格","创建时间"}; * String[] field = {"orderNum","productName","productPrice","createTime"}; * ExportTools.export("sellJoin...
java导出Excel表格,支持标题合并居中,字体修改,带表头,全部是调好的项目搭起就可以用,该项目是在三层架构中实现
该资源是一个rar压缩包形式的源代码,主要演示了java如何导出数据到Excle并保存到本地电脑、以及在web中如何导出数据库中的数据到Excel并下载。
java导出数据到excel中的相关jar包。导出Excel的技术有两种Jakarta POI和Java Excel。
java导出CVS,csv只是一种文件的形式。。。就是按照逗号(英文逗号)分隔的文件 它的做成跟普通的文件做成是一样一样的,只需要创建一个文件(*.csv),把字符串按照一定的格式(AAA,BBB\nCCC,DDD注意必须是英文的...
Java导出Excel缩小填充,网上找了好多都没找到例子说实现不了,后面不经意间看到根据模板填充数据,解决了每个单元不同的样式问题。
java导出excel
struts2导出excel java 导出excel: JXL_excel: 可以直接在elipse下运行的例子 可以直接导出excel文件(包含所需的jar包) CSharpJExcel: 是JXL的官方下载的 包括详细的文档 和jar包
java工程,源代码,可直接运行,需自己改造成web下载方式。