导出Excel(导出Excel的最长时间跨度不可超过两个月):
<a href="javascript:void(0);" onclick="exportOrder()" style="color:#000;"><center>导出Excel</center></a>
JS:
function exportOrder(){ var strOrderCode = $("#strOrderCode").val(); var strCustomerCode = $("#strCustomerCode").val(); var strPhone = $("#strPhone").val(); var strLinkMan = $("#strLinkMan").val(); var dtOrderTime = $("#dtOrderTime").val(); var dtBeginTime = $("#dtBeginTime").val(); var dtEndTime = $("#dtEndTime").val(); if(dtBeginTime != "" && dtBeginTime != undefined && dtEndTime !="" && dtEndTime != undefined){ var d = new Date(dtBeginTime.replace(/-/g,"/")); var d1 = new Date(dtEndTime.replace(/-/g,"/")); if(!checkDate(d,d1)){ return; } }else if(dtBeginTime != "" && dtBeginTime != undefined && (dtEndTime =="" || dtEndTime == undefined) ){ var d = new Date(dtBeginTime.replace(/-/g,"/")); var d1 = new Date(); if(!checkDate(d,d1)){ return; } }else if(dtEndTime != "" && dtEndTime != undefined && (dtBeginTime =="" || dtBeginTime == undefined) ){ var d1 = new Date(dtEndTime.replace(/-/g,"/")); var d = new Date(d1.getTime() - 1000*60*60*24*62); var y = d.getFullYear().toString(); var m = (d.getMonth()+1) < 10 ? "0" +(d.getMonth()+1) : (d.getMonth()+1).toString(); var d = d.getDate() < 10 ? "0"+d1.getDate() : d.getDate().toString(); dtBeginTime = y +"-"+ m+"-" + d; $("#dtBeginTime").val(dtBeginTime); if(!checkDate(d,d1)){ return; } } var url = '/purchase/exportExcel.do?strOrderCode='+strOrderCode; url += '&strCustomerCode='+strCustomerCode; url += '&strPhone='+strPhone; url += '&strLinkMan='+strLinkMan; if(dtOrderTime != "" && dtOrderTime != undefined){ url += '&dtOrderTime='+dtOrderTime; } if(dtBeginTime != "" && dtBeginTime != undefined){ url += '&dtBeginTime='+dtBeginTime; } if(dtEndTime != "" && dtEndTime != undefined){ url += '&dtEndTime='+dtEndTime; } url += '&idd='+Math.random(); redirect(url); } //大于2个月 function checkDate(d,d1){ if(d1.getTime()-d.getTime() > 1000*60*60*24*62){ alert("对不起,导出Excel的最长时间跨度不可超过两个月"); return false; } return true; }
后台:
public void exportExcel(){ String strFilePathName = "importPurchaseOrderList"+System.currentTimeMillis()+".xls"; HttpServletRequest request=ServletActionContext.getRequest(); HttpServletResponse response=ServletActionContext.getResponse(); response.setHeader("Content-disposition", "attachment; filename=" + strFilePathName); response.setContentType("application/vnd.ms-excel"); cdoRequest.setStringValue(ITransService.TRANSNAME_KEY,"getExportPurchaseList"); cdoRequest.setStringValue(ITransService.SERVICENAME_KEY,"purchaseService"); if(StringUtil.isNotEmpty(strOrderCode)){ cdoRequest.setStringValue("strOrderCode", likeWrap(strOrderCode)); } if(StringUtil.isNotEmpty(strPhone)){ cdoRequest.setStringValue("strPhone", likeWrap(strPhone)); } ... Return ret = getServiceBus().handleTrans(cdoRequest, cdoResponse); if(ret.getCode() == 0){ codsPurchaseOrder = cdoResponse.getCDOArrayValue("codsPurchaseOrder"); try { //表头格式 WritableFont wf_title = new WritableFont(WritableFont.ARIAL, 12,WritableFont.BOLD, false, UnderlineStyle.DOUBLE, jxl.format.Colour.BLACK); WritableCellFormat wcf_title = new WritableCellFormat(wf_title); // 单元格定义 wcf_title.setAlignment(jxl.format.Alignment.CENTRE); // 设置对齐方式 // 设置边框线为实线 wcf_title.setBorder(jxl.format.Border.LEFT, BorderLineStyle.THIN); wcf_title.setBorder(jxl.format.Border.RIGHT, BorderLineStyle.THIN); wcf_title.setBorder(jxl.format.Border.TOP, BorderLineStyle.THIN); wcf_title.setBorder(jxl.format.Border.BOTTOM, BorderLineStyle.THIN); //内容左对齐格式 WritableFont wf_left = new WritableFont(WritableFont.ARIAL, 12,WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLACK); WritableCellFormat wcf_left = new WritableCellFormat(wf_left); // 单元格定义 wcf_left.setAlignment(jxl.format.Alignment.LEFT); // 设置对齐方式 wcf_left.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);// 设置对齐方式(垂直居中) // 设置边框线为实线 wcf_left.setBorder(jxl.format.Border.LEFT, BorderLineStyle.THIN); wcf_left.setBorder(jxl.format.Border.RIGHT, BorderLineStyle.THIN); wcf_left.setBorder(jxl.format.Border.TOP, BorderLineStyle.THIN); wcf_left.setBorder(jxl.format.Border.BOTTOM, BorderLineStyle.THIN); //内容右对齐格式 WritableFont wf_right = new WritableFont(WritableFont.ARIAL, 12,WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLACK); WritableCellFormat wcf_right = new WritableCellFormat(wf_right); // 单元格定义 wcf_right.setAlignment(jxl.format.Alignment.RIGHT); // 设置对齐方式(水平居右) wcf_right.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);// 设置对齐方式(垂直居中) // 设置边框线为实线 wcf_right.setBorder(jxl.format.Border.LEFT, BorderLineStyle.THIN); wcf_right.setBorder(jxl.format.Border.RIGHT, BorderLineStyle.THIN); wcf_right.setBorder(jxl.format.Border.TOP, BorderLineStyle.THIN); wcf_right.setBorder(jxl.format.Border.BOTTOM, BorderLineStyle.THIN); //内容居中对齐格式 WritableFont wf_center = new WritableFont(WritableFont.ARIAL, 12,WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLACK); WritableCellFormat wcf_center = new WritableCellFormat(wf_center); // 单元格定义 wcf_center.setAlignment(jxl.format.Alignment.CENTRE); // 设置对齐方式 wcf_center.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);// 设置垂直对齐方式 wcf_center.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);// 设置对齐方式(垂直居中) // 设置边框线为实线 wcf_center.setBorder(jxl.format.Border.LEFT, BorderLineStyle.THIN); wcf_center.setBorder(jxl.format.Border.RIGHT, BorderLineStyle.THIN); wcf_center.setBorder(jxl.format.Border.TOP, BorderLineStyle.THIN); wcf_center.setBorder(jxl.format.Border.BOTTOM, BorderLineStyle.THIN); // 打开文件 //jxl.write.WritableFont WritableWorkbook book= Workbook.createWorkbook(ServletActionContext.getResponse().getOutputStream()); // WritableWorkbook book= Workbook.createWorkbook(new File(strFileName)); WritableSheet sheet = null; // 生成名为“第一页”的工作表,参数0表示这是第一页 sheet = book.createSheet("采购单", 0); Label labelTitle1 = new Label(0, 0, "单据编号" ,wcf_title); Label labelTitle2 = new Label(1, 0, "订单金额" ,wcf_title); Label labelTitle3 = new Label(2, 0, "供应商编号",wcf_title); Label labelTitle4 = new Label(3, 0, "供应商",wcf_title); ... // 将定义好的单元格添加到工作表中 sheet.addCell(labelTitle1); sheet.setColumnView(0, 30); sheet.addCell(labelTitle2); sheet.setColumnView(1, 25); sheet.addCell(labelTitle3); sheet.setColumnView(2, 20); sheet.addCell(labelTitle4); sheet.setColumnView(3, 20); ... for(int i = 0 ; i < codsPurchaseOrder.length ; i++){ //jxl.write.Label.Label(int c, int r, String cont, CellFormat st) Label label1 = new Label(0, i+1, codsPurchaseOrder[i].getStringValue("strOrderCode"), wcf_center); sheet.addCell(label1); Label label2 = new Label(1, i+1, codsPurchaseOrder[i].getStringValue("nAmount"), wcf_center); sheet.addCell(label2); Label label3 = new Label(2, i+1, codsPurchaseOrder[i].getStringValue("strCustomerCode"), wcf_center); sheet.addCell(label3); Label label4 = new Label(3, i+1, codsPurchaseOrder[i].getStringValue("strCustomerName"), wcf_center); sheet.addCell(label4); ... } // 写入数据并关闭文件 book.write(); book.close(); } catch (Exception e) { return; } } }
。。
相关推荐
这个实例提供了两种方法来导出Excel文件:通过Servlet和通过main方法。这两种方法都是在Java环境中操作Excel数据的有效方式。 首先,让我们详细了解一下Apache POI库。POI提供了一个API,允许开发者在Java应用程序...
"Excel通用导出excel文件"这个主题涵盖了如何在不同情况下高效地实现这一目标,不论你是要处理小规模的数据还是大规模的数据集。下面,我们将深入探讨Excel的通用导出功能,以及如何利用它来优化你的工作流程。 ...
"C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致的解决办法" 在导出Excel文件时,经常会遇到“文件格式与扩展名指定格式不一致”的问题,这是因为大多数人在导出Excel文件时,都是默认保存Excel的格式...
本篇文章将深入探讨如何使用C#来创建和导出Excel文件。 首先,你需要一个库来处理Excel文件。Microsoft提供了`Microsoft.Office.Interop.Excel`命名空间,这是一个COM接口,可以直接与Excel应用程序交互。但是,...
本文实例为大家分享了Winform实现导入导出Excel文件的具体代码,供大家参考,具体内容如下 /// /// 导出Excel文件 /// /// /// <param name=dataSet></param> /// 数据集 /// 导出后是否打开文件 /// ...
easyexcel 导出excel文件带多个图片JAVA代码包
QT导出EXCEL,从tableWidget列表获取数据导出到excel文件。导出过程使用了excel模板文件,可以从tableWidget读取固定的几列数据导出到excel文件中。其中excel事先设置好文件格式,后续直接读数写数即可。开发过程...
自定义的一个excel文件导入导出类,支持Excel2003到2010的格式。里面也有简单的配置文件的创建。
导出Excel文件涉及到从数据库或内存中的数据生成新的Excel文件。这个过程与导入类似,但方向相反。 1. **创建Excel工作簿**:使用EPPlus创建一个新的ExcelPackage对象,然后添加工作簿和工作表。 2. **填充数据**...
C#快速导出Excel文件,3秒可导10万行数据
"Html导出Excel文件(兼容所有浏览器)"的主题着重于实现这个功能,并确保在各种不同的浏览器环境下都能正常工作。这通常涉及到前端技术与后端技术的结合,以及对浏览器兼容性的深入理解。 首先,我们要明白HTML表格...
在本示例"SSM框架利用poi导入导出Excel文件 demo"中,我们将探讨如何在SSM项目中使用Apache POI库来实现Excel文件的导入与导出功能。 Apache POI是一个流行的开源库,它允许开发者在Java应用程序中创建、修改和显示...
Visual C++源代码 194 如何使用剪贴板导出Excel文件Visual C++源代码 194 如何使用剪贴板导出Excel文件Visual C++源代码 194 如何使用剪贴板导出Excel文件Visual C++源代码 194 如何使用剪贴板导出Excel文件Visual ...
Visual C++源代码 150 如何以数据源方式导出Excel文件Visual C++源代码 150 如何以数据源方式导出Excel文件Visual C++源代码 150 如何以数据源方式导出Excel文件Visual C++源代码 150 如何以数据源方式导出Excel文件...
Visual C++源代码 195 如何使用自动化导出Excel文件Visual C++源代码 195 如何使用自动化导出Excel文件Visual C++源代码 195 如何使用自动化导出Excel文件Visual C++源代码 195 如何使用自动化导出Excel文件Visual ...
在MVC架构下,处理导入和导出Excel文件是常见的需求,尤其在数据管理、报表生成以及数据交换场景中。下面我们将详细探讨如何在MVC应用中实现这个功能。 首先,导入Excel文件涉及到读取Excel数据并将其转化为可操作...
在Asp.net开发中,有时候我们需要将数据导出到Excel文件以便用户下载或者进行进一步的数据处理。... 1. **导出CSV文件** ...通过实践,开发者可以更好地掌握在Asp.net中导出Excel文件的技巧,提高项目开发效率。
本项目“poi多线程大数据导出excel文件”提供了一个解决方案,利用多线程来提高Excel的大数据导出效率。 Apache POI 3.1版本是较早的版本,而项目中使用了更新的4.1版本,这意味着它可能利用了更多优化和新特性。在...
Java实现导出Excel文件和XML文件 Java实现导出Excel文件和XML文件是Java语言中的一种常见需求,本文将详细介绍如何使用Java实现导出Excel文件和XML文件的功能。 一、功能简述 点击“导出”按钮,弹出文件选择...