package com.ihd.card.service;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.swing.JOptionPane;
import jxl.Workbook;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import com.ihd.po.CardsInfoPO;
import com.ihd.po.ProvincesPO;
import com.ihd.service.InterService;
import com.ihd.util.PoiDemo;
public class CreateExcelService implements InterService {
@Override
public String doService(HttpServletRequest request,
HttpServletResponse response) {
List<CardsInfoPO> cardlist = (List<CardsInfoPO>)request.getSession().getAttribute("cardlist");
if(cardlist == null){
JOptionPane.showMessageDialog(null, "没有任何数据要导出,请检查!");
return "bgjsp/searchCardsInput.do";
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss" );
String date = sdf.format(new Date());
String targetfile = "C:/"+date+".xls";// 输出的excel文件名
String[] title = { "地区", "批次", "卡号","密码" };// excel工作表的标题
WritableWorkbook workbook;
try {
// 创建可写入的Excel工作薄,运行生成的文件在tomcat/bin下
// workbook = Workbook.createWorkbook(new File("output.xls"));
//System.out.println("begin");
OutputStream os = new FileOutputStream(targetfile);
workbook = Workbook.createWorkbook(os);
for(int j=0; j<4; j++) {
String worksheet = "List"+(j+1);// 输出的excel文件工作表名
WritableSheet sheet = workbook.createSheet(worksheet, j); // 添加第一个工作表
jxl.write.Label label;
jxl.write.Label label1;
jxl.write.Label label2;
jxl.write.Label label3;
for (int i = 0; i < title.length; i++) {
// Label(列号,行号 ,内容 )
label = new jxl.write.Label(i, 0, title[i]); // put the title
// in row1
sheet.addCell(label);
}
for(int i=0;i<cardlist.size();i++){
label1 = new jxl.write.Label(0, i+1,cardlist.get(i).getProvinces().getProvincesName() );
label2 = new jxl.write.Label(1, i+1, cardlist.get(i).getBatch());
label = new jxl.write.Label(2, i+1, cardlist.get(i).getCardID());
label3 = new jxl.write.Label(3, i+1, cardlist.get(i).getCardPwd());
sheet.addCell(label1);
sheet.addCell(label2);
sheet.addCell(label);
sheet.addCell(label3);
}
}
workbook.write();
workbook.close();
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "表格导出出错,错误信息 :"+e+"\n错误原因可能是表格已经打开。");
e.printStackTrace();
}
JOptionPane.showMessageDialog(null, "表格已成功导出到"+targetfile);
return "bgjsp/searchCardsInput.do";
}
}
分享到:
相关推荐
本教程将详细介绍如何使用`jxl`库在导出Excel时添加水印,以及涉及的核心类`WritableWorkbook`、`WritableSheet`和`WritableCellFormat`。 `jxl`库提供了一套完整的API来操作Excel文件,包括创建新的工作簿、添加...
本篇文章将深入探讨如何利用`jxl`库来创建和导出Excel表格。 首先,我们需要在项目中引入`jxl`库。如果你的项目是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml <groupId>...
jxl导出Excel基础,非常有用的一个东西,漫漫看
标题中的“jxl导出excel”指的是使用JExcelApi(简称jxl)库来生成和导出Microsoft Excel格式的文件。JExcelApi是一个开源Java库,允许开发者在Java应用程序中读取、写入和修改Excel文件。这个工具类在处理大量数据...
标题中的“jxl导出excel文件简单示例”是指使用jxl库来创建和导出Excel文件的一个基本操作。jxl是一个Java库,它允许开发者读取、写入和修改Excel文件,尤其在处理批量数据时非常方便。在这个示例中,我们将探讨如何...
"jxl导出excel.zip"是一个包含工具类的压缩包,用于帮助开发者便捷地将数据导出为Excel格式,主要利用了JXL库。JXL是Java Excel API的一个简称,它是一个开源的Java库,支持读取、写入以及修改Microsoft Excel文件。...
在Java编程环境中,处理Excel文件是一项常见的任务,特别是在数据导入导出、报表生成等领域。`jxl`库是一个广泛使用的开源库,它允许开发者用Java读取、写入和修改Excel文件。在这个特定的场景中,我们将探讨如何...
导出Excel文件则是将数据写入到一个新的或已存在的Excel文件中。以下是一个基本的导出示例: ```java import jxl.*; import jxl.write.*; public class ExcelExporter { public static void main(String[] args) ...
### 使用JXL库导出Excel的关键知识点 #### JXL库简介 JXL(Java Excel API)是一个用于读取和写入Microsoft Excel文件的Java库。它支持多种版本的Excel文件,包括`.xls`格式。使用JXL库进行Excel操作非常方便,特别...
Java使用JXL库进行Excel导入导出是一种常见的技术实践,特别是在需要在Java应用程序或Web应用中处理Excel数据时。JXL是一个轻量级的库,它允许开发人员以纯Java方式读取、创建和修改Excel文件,而无需依赖于Windows...
jxl库提供了`WritableCell`接口,通过它的实现类如`WritableLabel`和`WritableNumber`,我们可以向Excel单元格中写入文本和数字。例如,写入一个字符串: ```java import jxl.write.*; Label label = new Label(0,...
接下来,我们将通过一个简单的示例——`ExcelDemo`,来展示如何使用JXL导出Excel表格。首先,我们需要创建一个`Workbook`对象,这相当于Excel文件中的工作簿。然后,我们可以在这个工作簿上创建多个`Sheet`,每个`...
标题“JXL导出Excel”指的是使用JExcelApi库来创建和操作Microsoft Excel文件的Java编程技术。JExcelApi是一个开源的Java库,允许开发者在Java应用程序中读写Excel文件,而无需安装Microsoft Office。这个库特别适用...
总的来说,jxl和Apache POI为Java开发者提供了处理Excel文件的强大能力。选择哪个库取决于项目需求,如对文件格式的支持、性能要求以及对功能的复杂程度。如果你需要处理较旧的.xls格式,jxl可能是合适的选择;而...
在实际项目中,jxl库不仅限于将txt转换为Excel,还可以用于更复杂的数据处理,比如读取Excel数据到Java对象,或者从Java对象写入Excel,非常适合数据导入导出场景。 在提供的压缩包文件"jxl方式生成excel表格.zip...
Java使用JXL库导出Excel表格是一个常见的任务,特别是在数据处理和报告生成的场景中。JXL是一个开源的Java库,允许我们读取、写入和修改Excel文件。以下是对这个知识点的详细解释: 首先,我们需要理解Excel文件的...
使用JXL,我们可以读取Excel文件中的数据,包括文本、数字、日期等。以下是一个简单的示例,展示如何读取Excel文件: ```java WritableWorkbook workbook = Workbook.getWorkbook(new File("input.xls")); Sheet ...
根据提供的文件信息,我们可以总结并深入探讨以下几个与...以上是关于如何使用Java JXL库导出Excel文件的详细介绍,涵盖了从环境准备到具体实现步骤的全过程。希望这些知识点能够帮助您更好地理解和应用Java JXL库。
### jxl导出Excel数据的详细介绍与实例 #### 一、引言 在Java开发过程中,经常需要将数据导出到Excel文件中。jxl是一个非常实用的Java库,用于读取和写入Microsoft Excel文件。本文将详细介绍如何使用jxl来导出数据...
4. **导出数据为Excel**:如果你有一个Java集合(如ArrayList或HashMap)中的数据,可以方便地将其导出为Excel格式,这对于数据报告和分析非常有用。 5. **支持多种数据类型**:JXL支持多种Excel数据类型,包括字符...