1.导入jxl(net.sourceforge.jexcelapi)
2.书写报表帮助类:
package com.kevin.jexcel.common;
import java.io.IOException;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
public class JexcelHelp {
private WritableWorkbook workbook;
public JexcelHelp(HttpServletResponse response, String name)
throws IOException {
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename="
+ name + ".xls");
workbook = Workbook.createWorkbook(response.getOutputStream());
}
public WritableSheet getSheet(String name, int index) {
WritableSheet sheet = workbook.createSheet(name, index);
return sheet;
}
public void addList(WritableSheet sheet, List<String[]> results)
throws RowsExceededException, WriteException {
for (int i = 0; i < results.size(); i++) {
String[] element = results.get(i);
for (int j = 0; j < element.length; j++) {
String text = element[j];
if (text == null)
text = "";
Label label = new Label(j, i, text);
sheet.addCell(label);
}
}
}
public void generate() throws IOException, WriteException {
workbook.write();
workbook.close();
}
}
3.使用:
package com.kevin.jexcel.service;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import jxl.format.Alignment;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
import org.springframework.stereotype.Service;
import com.kevin.entity.Sysuser;
import com.kevin.jexcel.common.JexcelHelp;
import com.kevin.sysuser.service.SysuserService;
@Service
public class JexcelService {
@Resource
private SysuserService sysuserService;
public void export(HttpServletResponse response) throws IOException,
RowsExceededException, WriteException {
// 取出数据.
List<Sysuser> userList = sysuserService.list();
List<String[]> userList_format = format(userList);
// 生成报表.
JexcelHelp jexcelHelp = new JexcelHelp(response, "userlist");
WritableSheet firstSheet = jexcelHelp.getSheet("1", 0);
jexcelHelp.addList(firstSheet, userList_format);
// 设置报表头.
firstSheet.insertRow(0);
firstSheet.mergeCells(0,0,3,0);
WritableFont font = new WritableFont(WritableFont.TIMES, 16, WritableFont.BOLD, false);
WritableCellFormat cellFormat = new WritableCellFormat (font);
cellFormat.setAlignment(Alignment.CENTRE);
Label header= new Label(0, 0, "用户信息表", cellFormat);
firstSheet.addCell(header);
jexcelHelp.generate();
}
/**
* 格式化数据.
*
* @param userList
* @return
*/
private List<String[]> format(List<Sysuser> userList) {
List<String[]> userList_format = new ArrayList<String[]>();
for (Sysuser user : userList) {
String[] user_format = new String[4];
user_format[0] = user.getId().toString();
user_format[1] = user.getName();
user_format[2] = user.getSexEnum().getLabel();
user_format[3] = user.getState().toString();
userList_format.add(user_format);
}
return userList_format;
}
}
4.导出的excel文件如果单元格是数字的话,左上角有绿色小三角。可将excel设置成忽略拼写,将绿色小三角去掉。
文件-》选项-》公式-》错误检查-》去掉“允许后台错误检查”的勾。
分享到:
相关推荐
《JExcelAPI:Java操作Excel的强大工具》 在IT领域,数据处理是一项至关重要的任务,尤其是在涉及大量数据的业务环境中。Excel作为最广泛使用的电子表格软件之一,其强大的功能和易用性使得它成为了数据存储和分析...
**JExcelAPI(jxl):Java操作Excel的利器** JExcelAPI,简称为jxl,是一个用Java编写的开源库,它允许开发者在Java应用程序中读取、写入和修改Microsoft Excel文件。这个库非常实用,特别是在处理大量数据导入导出...
java JXL导出Excel源码及jfreechart 生成折线图,饼图 java JXL导出Excel源码及jfreechart 生成折线图,饼图 java JXL导出Excel源码及jfreechart 生成折线图,饼图
`jxl.jar`是jexcelapi的库文件,包含了所有必要的类和方法,将其添加到项目类路径中,即可开始使用API。 `jxlrwtest.xls`是一个测试文件,可能包含了示例数据和用例,用于演示jexcelapi的功能。通过分析这个文件,...
标题“jxl导入导出”涉及的是Java编程中使用JExcelAPI(通常简称为jxl)库进行Excel文件处理的相关技术。JExcelAPI是一个开源的Java库,它允许开发人员读取、写入和修改Excel文件。这个库特别适合那些需要在Java应用...
标题 "利用JXL(JExcelApi)操作Excel文档" 涉及的是在Java环境中使用JXL库来读取、写入或修改Excel电子表格文件。JExcelApi(简称JXL)是一个开源的Java库,它提供了对Microsoft Excel文件格式的支持,使得开发者能够...
jxl(jExcelAPI)的基本使用方法
implementation 'net.sourceforge.jexcelapi:jxl:2.6.12' ``` 三、基础操作 1. **读取Excel文件** 使用`Workbook`类的静态方法`Workbook.getWorkbook(File)`加载Excel文件,然后通过`getSheets()`获取所有工作表...
<groupId>net.sourceforge.jexcelapi</groupId> <artifactId>jxl <version>2.6.12 ``` 一旦导入了JXL库,我们就可以开始创建Excel工作簿。以下是一个简单的例子,展示了如何创建一个新的Excel文件并写入数据: ...
《使用JExcelAPI进行Excel操作的深度解析》 在Java编程中,处理Excel文件是一项常见的任务,无论是数据导入导出,还是报表生成,都离不开对Excel的读写操作。JExcelAPI,作为一个强大的开源库,为Java开发者提供了...
《使用jxl-2.6.12.jar操作Excel:详解与实践》 在Java编程领域,处理Excel数据是一项常见的任务。为此,开发者们通常会借助于特定的库,其中,jxl是一个广泛使用的开源库,它允许Java程序读取、写入以及修改Excel...
<groupId>net.sourceforge.jexcelapi</groupId> <artifactId>jxl <version>2.6.12 ``` 2. **创建水印图像**: 使用任何图像编辑工具(如GIMP或Photoshop)创建一个包含水印文本或图形的透明PNG图像。保存此...
"jxl模版生成excel" 指的是使用JExcelAPI(简称jxl)这个Java库来创建基于模板的Excel文件。JExcelAPI是一个开源项目,允许程序开发者读写Microsoft Excel文件,它支持从Java数据结构直接导出到Excel格式,同时也可...
在众多开源库中,**jExcelAPI**(简称**jxl**)和**Apache POI**是最受欢迎的两种选择。本文将重点介绍jxl库的基本概念、操作流程及其与POI之间的比较。 #### 二、jExcelAPI (jxl) 概述 jExcelAPI(jxl)是一个用于...
jxl是一个韩国人写的java操作excel的工具, 在java的开源世界中,有两套比较有影响的API可供使用,一个是POI,一个是jExcelAPI(即jxl)。jxl功能相对POI比较弱一点。 但jExcelAPI对中文支持非常好,API是纯Java的, ...
<groupId>net.sourceforge.jexcelapi</groupId> <artifactId>jxl <version>2.6.12 ``` 接下来,我们将讨论jxl库的核心功能:读取和写入Excel文件。 1. **读取Excel文件** 使用jxl库读取Excel文件的基本步骤...
标题中的“jxl支持jdk1.5”表明我们讨论的是一个与Java编程语言相关的库,具体来说是JExcelApi(通常简称为jxl),它在Java 1.5环境下是兼容并可正常运行的。JExcelApi是一个开源的Java库,主要用于读写Microsoft ...
Java在处理Excel文件时,经常会使用到各种库,其中JExcelAPI是一个早期广泛使用的开源库,版本号为2.6.2。这个库允许Java开发者方便地读取、写入和操作Excel文件,特别是老版本的.xls格式。本文将详细探讨如何使用...
标题"jxl.jar和jxl.api文档及使用方法"指的是一个Java库,名为JExcelAPI(通常简称为jxl),用于处理Excel文件。它包含了一个名为`jxl.jar`的可执行Java档案,这个档案集成了JExcelAPI的所有类和方法,使得开发人员...