`
xiaoxiong_it
  • 浏览: 130102 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

jxl 导出为Excel文件

阅读更多
最近几天在做Excel导入导出的练习,今天刚好做了导出为Excel文件的模块,有好多还不是很理解,好多的是参照别人的代码。
1.首先导入相应的jar包,这里就不多说了,网上很容易就可以找的到;
2.自己写了一个导出类:
package utils;

import java.io.IOException;
import java.io.OutputStream;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.List;

import org.aspectj.weaver.NewConstructorTypeMunger;

import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
import EmpExcel.model.EmployeeInfo;

public class ExportEmployee {
	
	public static void ExportEmployee(OutputStream os, List<EmployeeInfo> employeeInfos) {
		 
        try {
        	//打开文件
			WritableWorkbook book  =  Workbook.createWorkbook(os);
			//生成名为“员工信息”的工作表,参数0表示这是第一页
            WritableSheet sheet  =  book.createSheet("员工信息",0 );
            //第一行为标题行
            Label label00 = new Label(0, 0, "员工编号");
            Label label10 = new Label(1, 0, "员工姓名");
            Label label20 = new Label(2, 0, "员工性别");
            Label label30 = new Label(3, 0, "国籍");
            Label label40 = new Label(4, 0, "身份证号");
            sheet.addCell(label00);
            sheet.addCell(label10);
            sheet.addCell(label20);
            sheet.addCell(label30);
            sheet.addCell(label40);
            //循环导出数据到excel的label中
			for (int i = 1; i < employeeInfos.size(); i++) {
				EmployeeInfo employeeInfo = employeeInfos.get(i);
				Label label0i = new Label(0, i, employeeInfo.getEmployeeNumber());
				Label label1i = new Label(1, i, employeeInfo.getFullName());
				Label label2i = new Label(2, i, employeeInfo.getSex());
				Label label3i = new Label(3, i, employeeInfo.getNationality());
				/*if(employeeInfo.getDateOfBirth() != null){
					DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
					label3i = new Label(3, i, format1.format(employeeInfo.getDateOfBirth()));
				}*/
				Label label4i = new Label(4, i, employeeInfo.getEmployeeNumber());
				sheet.addCell(label0i);
	            sheet.addCell(label1i);
	            sheet.addCell(label2i);
	            sheet.addCell(label3i);
	            sheet.addCell(label4i);
			}
			//写入数据并关闭文件
			book.write();
			book.close();
		} catch (IOException e) {
			e.printStackTrace();
		} catch (RowsExceededException e) {
			e.printStackTrace();
		} catch (WriteException e) {
			e.printStackTrace();
		}
	}
}

3.在action中调用以上写的导出类中的导出方法:
String reportName = "员工信息";
		response.setContentType("application/msexcel;charset=UTF-8");   
		response.setCharacterEncoding("UTF-8");
		response.setHeader("Content-Disposition", 
				"attachment;filename="+java.net.URLEncoder.encode(reportName+".xls", 
				"UTF-8"));  
		response.addHeader("Pargam", "no-cache");  
		response.addHeader("Cache-Control", "no-cache"); 
		
		List<EmployeeInfo> employeeInfos = this.searchEmployeeInfos(request,response);
		
		OutputStream os = response.getOutputStream();
		//调用导出Excel的方法
		ExportEmployee.ExportEmployee(os, employeeInfos);
		
		response.getOutputStream().flush();
		response.getOutputStream().close();

以上就是导出为Excel的主要方法,里面自己有好多不是很理解还有待加强,但基本功能已经实现。
分享到:
评论

相关推荐

    jxl导出excel加水印.zip

    `jxl`库是一个流行的Java库,它允许开发者读取、写入和修改Excel文件。本教程将详细介绍如何使用`jxl`库在导出Excel时添加水印,以及涉及的核心类`WritableWorkbook`、`WritableSheet`和`WritableCellFormat`。 `...

    jxl导出excel文件简单示例

    标题中的“jxl导出excel文件简单示例”是指使用jxl库来创建和导出Excel文件的一个基本操作。jxl是一个Java库,它允许开发者读取、写入和修改Excel文件,尤其在处理批量数据时非常方便。在这个示例中,我们将探讨如何...

    jxl导出excel总结

    《jxl导出Excel的深度解析与应用》 在信息化高度发展的今天,Excel作为数据处理和分析的重要工具,被广泛应用于各个领域。Java作为一种强大的编程语言,如何与Excel进行交互,成为了许多开发者关注的焦点。jxl库...

    jxl导出excel工具类

    在描述中提到的“jxl导出excel工具类”,通常会包含以下功能: 1. **初始化工作簿**:创建一个新的`Workbook`对象,这是Excel文件的基本单位,可以包含多个工作表。 2. **创建工作表**:在`Workbook`中添加新的`...

    Android-Android使用jxl快速导出excel表

    在Android开发中,有时我们需要为用户提供将数据导出到Excel文件的功能,以便他们可以方便地在桌面环境中查看或进一步处理。在这种场景下,一个常用的库是jxl,它允许开发者在Java环境中创建、读取和修改Excel文件。...

    jxl实现导出excel数据

    在Java编程环境中,导出Excel...总的来说,JXL库为Java开发者提供了一个强大的工具,使得与Excel文件的交互变得更加容易。通过以上步骤,你可以轻松地实现从数据库或其他数据源导出数据到Excel文件,满足各种业务需求。

    jxl导入导出excel

    在Java编程环境中,JXL库是一个非常流行的工具,用于读取和写入Excel文件。它提供了简单易用的API,使得开发者能够方便地处理Excel数据,而无需依赖Microsoft Office套件。本文将深入探讨如何使用JXL进行Excel的导入...

    使用jxl导出Excel表的好例子

    总结来说,`jxl`库为Java开发者提供了一个强大而灵活的工具,用于生成和处理Excel文件。通过学习和实践,我们可以利用它轻松地实现数据的导出和导入功能,满足各种业务场景的需求。在开发过程中,应根据实际情况选择...

    jxl导出excel

    标题中的“jxl导出excel”指的是使用JExcelApi(简称jxl)库来生成和导出Microsoft Excel格式的文件。JExcelApi是一个开源Java库,允许开发者在Java应用程序中读取、写入和修改Excel文件。这个工具类在处理大量数据...

    jxl 导出 excel

    在Java编程环境中,JXL库是一个非常流行...总之,使用JXL库在Java中导出Excel文件是一项常见的任务,尤其在数据分析和报表生成场景下。通过熟悉JXL的API,你可以轻松地定制化Excel文件的格式和内容,满足各种业务需求。

    JXL导出excel的示例及文档

    在本示例中,我们将探讨如何使用JXL导出Excel以及JXL的API文档。 1. **JXL的基本用法** - **创建工作簿(Workbook)**: 使用`Workbook.createWorkbook()`方法创建一个新的Excel工作簿对象。 - **创建工作表...

    jxl技术导出excel文件

    总结来说,JXL是Java中导出Excel文件的强大工具,它提供了丰富的API来操作Excel的各种元素。通过熟练掌握JXL库,开发者可以轻松地在Java应用程序中实现数据导出为Excel的功能,满足各种数据展示和分析的需求。如果你...

    jxl导出excel支持模板和非模板

    利用JXL技术支持模板和非模板的表格导出

    jxl导出excel文件的例子,用了java反射

    标题提到的"jxl导出excel文件的例子",意味着我们将探讨如何使用JXL库创建Excel文件。 在Java中,导出Excel文件通常涉及以下步骤: 1. 引入JXL库:首先,你需要在项目中添加JXL的依赖。如果你使用的是Maven,可以...

    JXL导出Excel数据表

    JXL库是一个Java库,专门用于读写Microsoft Excel文件,它为开发者提供了一种便捷的方式来处理Excel数据,无需依赖Microsoft Office。本篇将详细介绍如何使用JXL库来导出Excel数据表,并结合描述中的信息,探讨其...

    JXL操作EXCEL 数据库导出EXCEL相关文件

    本篇文章将深入探讨JXL库在操作Excel和数据库导出Excel文件方面的应用。 首先,我们来了解JXL的基本用法。JXL支持读取和写入Biff8格式的Excel文件(即97-2003版本的.XLS文件),这涵盖了大部分常见的Excel文件需求...

    jxl对excel添加水印(含有setWaterMarkImage方法).zip

    在这个特定的场景中,我们将探讨如何利用`jxl`库为Excel文件添加水印,特别关注`setWaterMarkImage`方法。 首先,`jxl`库不直接提供内建的水印功能。但是,通过利用`jxl.write.WritableImage`类和一些图像处理技巧...

    java使用JXL导入导出excel

    JXL是一个轻量级的库,它允许开发人员以纯Java方式读取、创建和修改Excel文件,而无需依赖于Windows操作系统。尽管JXL可能无法直接实现单元格内的斜线绘制,但它提供了丰富的功能来处理Excel数据。 **1. JXL库的...

    jxl方式生成excel表格.zip

    jxl是一个广泛使用的开源Java库,它允许开发者读取、写入和修改Microsoft Excel文件。 首先,我们来详细了解一下jxl库。jxl库支持多种Excel操作,包括创建新的工作簿、添加工作表、设置单元格格式、插入公式以及...

Global site tag (gtag.js) - Google Analytics