`
44424742
  • 浏览: 232507 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Java Excel读写组件jxl使用

阅读更多

使用起来很简单,就不多说了,只把代码贴出来

package com.yinbo.satisfy.web.struts;

import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

//import com.lowagie.text.List;
import java.util.List;
import com.yinbo.satisfy.service.satisfy.SatisfyManage;
import com.yinbo.satisfy.service.sysmanage.BranchManage;
import com.yinbo.satisfy.service.sysmanage.ParamManage;
import com.yinbo.satisfy.util.CommonUtils;
import com.yinbo.satisfy.vo.Branch;
import com.yinbo.satisfy.vo.Suggestion;
import com.yinbo.satisfy.vo.SysParam;

import java.io.*;

import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;

public class QuestionAction extends Action {

private SatisfyManage satisfyManage;
private BranchManage branchManage;
private ParamManage paramManage;

/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {

String excelFileName = "c:\testaaa.xls";

//////////////////////
String branchId = request.getParameter("branchId");
String level = request.getParameter("level");
List list = satisfyManage.getQuestionData(branchId, level);
String result[][] = new String[list.size()][5];
for(int i=0; i<list.size(); i++) {
Suggestion sug = (Suggestion)list.get(i);
result[i][0]=sug.getSugContent();
///System.out.println(sug.getSugContent());
}

//添加所在单位
Branch branch = branchManage.getBranchById(branchId);
String branchName = branch.getBranchName();
if(CommonUtils.isEmpty(branchName)) branchName = "所有机构";

//添加级别
SysParam param = paramManage.getParam("3", level);
String paramName = param.getParamName();
if(CommonUtils.isEmpty(paramName)) paramName = "所有级别";

try {
String strFileName = "question.xls";
strFileName = java.net.URLEncoder.encode(strFileName, "UTF-8");//处理中文文件名的问题
strFileName = new String(strFileName.getBytes("UTF-8"),"GBK");//处理中文文件名的问题
response.reset();
response.setCharacterEncoding("UTF-8");
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition","attachment; filename=" + strFileName);
ByteArrayOutputStream baos = new ByteArrayOutputStream();

//创建可写入的Excel工作薄
//WritableWorkbook book = Workbook.createWorkbook(new File(excelFileName));
WritableWorkbook book = Workbook.createWorkbook(baos);

// 写工作表名字
WritableSheet sheet = book.createSheet("XXX建议", 0);

//此处可以设置列的宽度
int column = 0;
sheet.setColumnView(column++, 30);
sheet.setColumnView(column++, 30);
sheet.setColumnView(column++, 30);
sheet.setColumnView(column++, 30);

sheet.addCell(new Label(0, 0, "建议(" + branchName + ")(" + paramName + ")")); // 增加excel单元格
//sheet.addCell(new Label(1, 0, "部门名称")); // 增加excel单元格
//sheet.addCell(new Label(2, 0, "部门类型")); // 增加excel单元格
//sheet.addCell(new Label(3, 0, "综合成绩")); // 增加excel单元格

// result = getSelectResultWithStringArray(ds, sql);
int rows = result.length;
if (rows != 0) {
int cols = result[0].length;
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
sheet.addCell(new Label(j, i + 1, result[i][j]));
}
}
}

book.write(); // 写入byte输出流数组
book.close(); // jxl对象关闭

ServletOutputStream out = response.getOutputStream();
baos.writeTo(out);
out.flush();

} catch (IOException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}

return null;
}

public SatisfyManage getSatisfyManage() {
return satisfyManage;
}

public void setSatisfyManage(SatisfyManage satisfyManage) {
this.satisfyManage = satisfyManage;
}

public BranchManage getBranchManage() {
return branchManage;
}

public void setBranchManage(BranchManage branchManage) {
this.branchManage = branchManage;

}

public ParamManage getParamManage() {
return paramManage;
}

public void setParamManage(ParamManage paramManage) {
this.paramManage = paramManage;
}

}

分享到:
评论

相关推荐

    jxl java对excel的操作,导入mysql中

    同时,`14936550.jar`和`WwW.TGbuS.CoM_Gphone_Java Excel读写组件jxl使用.rar`可能是其他辅助库或教程资源,你可以根据需要进行查阅。 总的来说,JXL库结合Java的数据库操作能力,为处理Excel数据并将其导入MySQL...

    ExcelDemo_Excel导出_下载_POI读excel_JXL读写excel_java读写excel_列宽_读取合并或拆分单元格内容

    本文将深入探讨Java编程语言中如何使用Apache POI库和JExcelAPI(JXL)来读取、写入及操作Excel文件,同时也包括设置列宽以及处理合并或拆分的单元格内容。 首先,Apache POI是Apache软件基金会的一个开源项目,专...

    jxl操作excel实例,jxl jar包下载

    `jxl`库允许开发者使用Java语言来读写Microsoft Excel文件,无需依赖于Excel应用程序本身。本文将详细介绍如何使用`jxl`库进行Excel操作,并提供一个简单的实例。 首先,`jxl.jar`是`jxl`库的主要组件,你需要将其...

    Excel文件读写java代码

    2. **Java中的Excel操作**:Java本身并不内置对Excel文件的直接支持,但可以通过第三方库如JXL(Java Excel API)来实现读写Excel文件的功能。JXL是一个开源的Java库,它提供了方便的API,使得开发者可以轻松地操作...

    Java_Jxl开发.doc

    jExcelAPI(jxl)是一个用于读写Microsoft Excel文件的纯Java库。它支持Excel 95-2000的所有版本,并能生成Excel 2000的标准格式。此外,jxl还支持多种特性,包括但不限于: - **字体、数字和日期操作**:允许用户...

    java操作excel文件jxl.jar文件的源码,及例子

    JXL库是一个广泛使用的Java库,它允许开发者读取、写入和修改Microsoft Excel文件(.xls格式)。在这个场景中,我们关注的是`jxl.jar`文件,这是一个包含了JXL库的所有必要组件的Java归档文件。 `jxl.jar`的核心...

    解析EXCEL 工具 JXL JAR包

    JXL全称为Java Excel API,它为Java开发者提供了一个轻量级、易于使用的接口来处理Microsoft Excel文件。JXL支持多种Excel文件格式,包括97-2003的.BIFF格式和2007以后的.OOXML格式。通过JXL,你可以创建新的工作簿...

    jxl读写excelAPI文档

    通过以上步骤,你将能够使用JXL API有效地进行Excel文件的读写操作。在实际项目中,结合具体需求,可以灵活地组合这些API,实现更复杂的Excel文件处理任务。同时,随着技术的发展,JXL可能已经不再是最新的选择,...

    jxl.jar及其API,java操作excel

    总之,jxl.jar是Java开发人员处理Excel文件的重要工具,通过其提供的API,可以轻松地实现Excel数据的读写和格式化操作。jexcelapi_2_4_5版本的文档将帮助你更深入地了解和利用这些功能,提高工作效率。无论你是要...

    java操作execl包jxl.jar共享

    JXL.jar是一个流行的Java库,专门用于读写Microsoft Excel文件。这个包简化了Java程序与Excel电子表格之间的交互,无需依赖Microsoft Office或者COM组件。下面我们将深入探讨如何使用JXL.jar以及Java对Excel的操作。...

    jsp+jspsmart上传+poi3.8读取excel2007+jxl读取excel2003

    `jxl`则是另一个Java库,专门用于读写Excel 97-2003版本(.xls格式)的文件。与POI相比,jxl功能相对简单,但在处理旧版Excel文件时依然高效。在Java Web应用中,如果需要兼容旧版Excel,可以引入jxl库,利用其提供...

    api.rar_java flash_jxl_jxl api

    这些关键词暗示了本话题主要围绕Java编程中的库和API的使用,特别是JXL库,它是一个用于读写Excel文件的Java库。同时,Flash可能是指在Java中与Adobe Flash相关的交互或数据处理。 描述中提到"jxl和JFreeChart的api...

    jdbc链接数据库+通过java操作表格的jxl的jar包

    本资源包含两个重要的组件:`jdbc`连接数据库的jar包和`jxl.jar`,这是一个用于读写Excel文件的库。 **JDBC(Java Database Connectivity)**是Java平台的标准接口,它允许Java程序与各种数据库进行通信。JDBC提供...

    一种基于Java注解和反射机制的Excel文件读写操作方法.pdf

    5. Jxl工具类库的使用:Jxl是一个开源的Java库,用于读写Microsoft Excel文件。通过Jxl,开发者可以创建、修改和读取Excel文件中的数据。该类库提供了丰富的API来处理Excel的不同元素,例如Workbooks, Sheets, Cells...

    JavaExcel

    JavaExcel是一个纯Java实现的Excel操作组件,它允许开发者在Java应用程序中轻松地读取、创建和修改Excel文件。这个组件通常被称为JExcelAPI,它提供了丰富的API接口,使得处理Excel数据变得简单而高效。JExcelAPI...

    使用jxl包向excle模板中写入数据

    总结,使用`jxl`库可以方便地实现Java对Excel文件的读写操作。在向Excel模板中写入数据时,通过先复制模板再进行写入,可以确保原始模板不受影响,从而保持模板的完整性。通过熟练掌握`jxl`库的使用,开发者可以高效...

    jxl-2.6.12.zip

    标题中的"jxl-2.6.12.zip"正是这样一个专门用于读写Microsoft Excel文件的Java库的压缩包,版本号为2.6.12。这个库不仅功能丰富,而且易于使用,使得Java程序员可以轻松地在应用程序中导入、导出和操作Excel数据。 ...

    struts2 poi,jxl向excel表中插入记录源代码

    JXL则是另一个处理Excel文件的Java库,相比POI,它的功能相对较轻量级,但仍然能够实现读写Excel的基本需求。在早期的Java应用中,JXL是常见的选择,不过随着POI的发展,现在更多地被用于复杂的Excel操作。 这个...

    javaexcel源码

    总结,JavaExcel(JXL)是一个强大的工具,它使Java开发者能够方便地处理Excel文件,进行读写、格式化、公式计算以及创建超链接等操作。尽管不直接支持文件加密和解密,但结合其他库,你可以构建全面的Excel解决方案...

Global site tag (gtag.js) - Google Analytics