ExcelUtil .java
import jxl.format.Alignment; import jxl.format.Border; import jxl.format.BorderLineStyle; import jxl.format.Colour; import jxl.format.UnderlineStyle; import jxl.format.VerticalAlignment; import jxl.write.WritableCellFormat; import jxl.write.WritableFont; import jxl.write.WriteException; public class ExcelUtil { /** * 返回大标题格式 */ public static WritableCellFormat createWcfTitle() { WritableFont wfc_big = new WritableFont(WritableFont.ARIAL, 12, WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK); WritableCellFormat wcf_title = new WritableCellFormat(wfc_big); try { wcf_title.setBorder(Border.ALL, BorderLineStyle.THIN); wcf_title.setAlignment(Alignment.CENTRE); wcf_title.setVerticalAlignment(VerticalAlignment.CENTRE); wcf_title.setWrap(true); } catch (WriteException e) { e.printStackTrace(); } return wcf_title; } /** * 返回正文格式 */ public static WritableCellFormat createWcfText() { WritableFont wfc_small = new WritableFont(WritableFont.ARIAL, 12, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.BLACK); WritableCellFormat wcf_text = new WritableCellFormat(wfc_small); try { wcf_text.setBorder(Border.ALL, BorderLineStyle.THIN); wcf_text.setAlignment(Alignment.LEFT); wcf_text.setWrap(true); wcf_text.setVerticalAlignment(VerticalAlignment.CENTRE); } catch (WriteException e) { e.printStackTrace(); } return wcf_text; } }
exportExcel.jsp
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%> <%@page import="java.io.*"%> <%@page import="jxl.*"%> <%@page import="com.xxx.ExcelUtil"%> <% response.reset(); response.setContentType("application/vnd.ms-excel;charset=UTF-8"); response.setHeader("Content-Disposition", "attachment;filename=" + new String("Excel文件.xls".getBytes("gb2312"), "iso8859-1")); OutputStream os = response.getOutputStream(); WritableWorkbook wwb = null; WritableCellFormat wcf_title = ExcelUtil.createWcfTitle(); WritableCellFormat wcf_text = ExcelUtil.createWcfText(); wwb = Workbook.createWorkbook(os);//将 WritableWorkbook 写入到输出流 WritableSheet ws = wwb.createSheet("sheet1", 0);//创建第一个sheet ws.mergeCells(0, 0, 3, 0);//合并单元格 Label lbl = null; lbl = new Label(0, 0, "大标题" + sumMonth, wcf_title); ws.addCell(lbl); lbl = new Label(0, 1, "列标题1", wcf_text); ws.addCell(lbl); lbl = new Label(1, 1, "列标题2", wcf_text); ws.addCell(lbl); lbl = new Label(2, 1, "列标题3", wcf_text); ws.addCell(lbl); lbl = new Label(3, 1, "列标题4", wcf_text); ws.addCell(lbl); for (int i = 0; i < 3; i++) //设置宽度 ws.setColumnView(i, 15); os.flush(); wwb.write(); wwb.close(); os.close(); %>
补充一重要的用法
合并单元格:
WritableSheet.mergeCells(int col1, int row1, int col2, int row2)
单元格(col1,row1)到对角单元格(col2,row2)之间的合并为一个单元格
单元格换行
用\n换行( 前置条件是wcf_text.setWrap(true);)
Label lbl = new Label(1, 3, "星\n期", wcf_text);
jsp导出txt
方法1同上用response.getOutputStream (跳行用\r\n)
response.setContentType("text/html;charset=UTF-8"); response.setHeader("Content-Disposition", "attachment;filename=" + new String("文件名_".getBytes("gb2312"), "iso8859-1") + ".txt"); OutputStream os = response.getOutputStream(); os.write("abc".getBytes());
方法2
response.setContentType("application/octet-stream"); response.addHeader("Content-Disposition","attachment; filename=1.txt"); out.print("First line text.\r\n"); out.print("Second line.\r\n");
<%@ page 。。。%>出现一次就是一空行....
或
共享、备忘...
相关推荐
利用JXL技术支持模板和非模板的表格导出
封装了一个简单易用、通用、动态的从数据库导出到Excel的方法,可以动态的指定导出那些列,显示什么名字,按什么顺序显示;支持本地文件存储和JSP/Servlet文件下载。
代码都测试过,自己写的,实现了简单功能,Mvc其他功能自己实现,和导出excel功能关联很少
使用JSP操作Excel有三中方法 第一种方法:静态方法生成Word和Excel文档 第二种方法:如何使用POI组件操作Excel 地三种方法:使用JXL组件操作Excel
通过js和jxl导出jsp页面的table表格到excel,兼容所有浏览器及复杂的table布局
本例实现使用jxl实现jsp对excel导入和导出的功能 欢迎大家使用
最近在网上看到一个用java来操纵excel的open source,在weblogic上试用了一下,觉得很不错,特此向大家推荐一下。 首先去http://www.andykhan.com/jexcelapi/index.html下载最新的JExcelApi,把jxl.jar置于你的...
这段时间研究Excel格式的导出,这个项目我用了三种方式将后台查询出来的数据导出Excel格式的通用方法
因为它是使用Java编写的,所以我们在Web应用中可以通过JSP、Servlet来调用API实现对Excel数据表的访问。 下载: 官方网站http://www.andykhan.com/jexcelapi/下载新版本(本人下的是jexcelapi_2_6_12.tar.gz,...
该系统涵盖了企业管理的各个方面,使用众多J2EE的新技术,如javamail,ajax,displaytag分页,jxl,poi 导出excel, word 报表 等等。
jsp SSH开发jboa系统 实现报销单月度统计 饼状图绘制 导出Excel表报销单 附加sql数据库角本 sql server2008数据库
21.1 应用JXL组件操作Excel 776 21.2 应用POI组件操作Excel 807 第22章 报表与打印 829 22.1 Web打印 830 22.2 利用Word打印报表 833 22.3 利用Excel打印报表 838 22.4 应用WebBrowser+CSS套打邮寄 22.5 打印库存...
21.1 应用JXL组件操作Excel 776 21.2 应用POI组件操作Excel 807 第22章 报表与打印 829 22.1 Web打印 830 22.2 利用Word打印报表 833 22.3 利用Excel打印报表 838 22.4 应用WebBrowser+CSS套打邮寄 22.5 打印库存...
24.需要在web页面导入导出Excel单元格数据的; ……… SOAOFFICE中间件包括三个内置组件:SOAExcel、SOAWord、SOAPowerPoint。另外企业版还包括支持PDF文件的SOAPDF组件。 SOAOFFICE 中间件采用标准HTTP传输协议,...