`
zhangfeilo
  • 浏览: 397302 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

JAVA导出Excel

    博客分类:
  • java
阅读更多
package lee;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import jxl.Workbook;
import jxl.format.Alignment;
import jxl.format.Border;
import jxl.format.BorderLineStyle;
import jxl.format.Colour;
import jxl.format.Pattern;
import jxl.format.UnderlineStyle;
import jxl.format.VerticalAlignment;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;

/**
 * 导出Excel文件
 * 
 * @author MrGao 2010-7-13下午02:19:51
 */
public class ExcelExport {
	public static void main(String[] args) {
		List list = new ArrayList();
		list.add(new String[] { "a", "b", "c" });
		list.add(new String[] { "a", "b", "c" });
		System.out.println(ExcelExport.class.getResource(""));
		createExcel(list, new String[] { "ID", "名称", "时间" }, "c:\\",
				String.valueOf(new Date().getTime()));
	}

	/**
	 * 生成Excel
	 * 
	 * @param models
	 *            数据List<String[]>
	 * @param className
	 *            导成Excel的实体列名组String[]
	 * @param tempPath
	 *            生成Excel存放的临时路径String
	 * @param excelName
	 *            生成的Excel名String
	 */
	public static void createExcel(List models, String[] classNames,
			String tempPath, String excelName) {
		// Class clasVo = null;

		try {
			// clasVo = Class.forName(className);
			OutputStream os = new FileOutputStream(tempPath + "\\" + excelName
					+ ".xls");
			WritableWorkbook workbook = Workbook.createWorkbook(os);
			WritableSheet sheet = workbook.createSheet(excelName, 0);
			// 用于标题
			WritableFont titleFont = new WritableFont(WritableFont.ARIAL, 17,
					WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE,
					jxl.format.Colour.WHITE);
			WritableCellFormat wcf_title = new WritableCellFormat(titleFont);
			wcf_title.setBackground(Colour.TEAL, Pattern.SOLID);
			wcf_title.setBorder(Border.ALL, BorderLineStyle.DOUBLE,
					Colour.OCEAN_BLUE);
			wcf_title.setVerticalAlignment(VerticalAlignment.CENTRE); // 垂直对齐
			wcf_title.setAlignment(Alignment.CENTRE);

			// 用于正文
			WritableFont NormalFont = new WritableFont(WritableFont.TAHOMA, 11);
			WritableCellFormat wcf_center = new WritableCellFormat(NormalFont);
			wcf_center.setBorder(Border.ALL, BorderLineStyle.DOUBLE,
					Colour.GRAY_25);
			wcf_center.setVerticalAlignment(VerticalAlignment.CENTRE); // 垂直对齐
			wcf_center.setAlignment(Alignment.CENTRE);
			wcf_center.setWrap(true); // 是否换行

			sheet.addCell(new Label(0, 0, excelName, wcf_title));
			sheet.mergeCells(0, 0, classNames.length, 0);

			//设置列名
			for (int i = 0; i < classNames.length; i++) {
				sheet.setColumnView(i, classNames[i].length() * 5);
				sheet.addCell(new Label(i, 1, classNames[i], wcf_center));
			}

			int rowId = 2;// 写入第几行 第一行为列头 数据从第二行开始写
			//导入数据集
			for (Object ssTopModel : models) {
				int columnId = 0;// 写入第几列 第一列为自动计算的行号 数据从第二列开始写
				// 获取该类 并获取自身方法
				String[] strs = (String[]) ssTopModel;
				for (int i = 0; i < strs.length; i++) {
					try {
						sheet.addCell(new Label(columnId, rowId, strs[i],
								wcf_center));
					} catch (Exception e) {
						e.printStackTrace();
					}
					columnId++;
				}
				rowId++;
			}

			workbook.write();
			workbook.close();
			os.flush();
			os.close();
		} catch (WriteException e) {
			e.printStackTrace();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

 

0
0
分享到:
评论

相关推荐

    java导出excel POI jar包

    Java导出Excel是Java开发中常见的需求,尤其是在数据处理和报表生成方面。Apache POI库是Java领域中广泛使用的工具,它允许开发者读写Microsoft Office格式的文件,包括Excel(.xlsx和.xls)。本篇文章将深入讲解...

    java导出excel超过65536条记录出错

    java导出excel超过65536条记录出错 java导出excel超过65536条记录出错 java导出excel超过65536条记录出错 java导出excel超过65536条记录出错

    java导出excel复合表头简单实例

    本资源提供的"java导出excel复合表头简单实例"是针对Java开发者的一个实用教程,特别是对于那些刚开始接触Java Excel导出功能的新手。这个实例将帮助你理解如何在Excel中创建并设置复杂的表头结构,使得数据的呈现...

    java导出excel(写入到excel后再下载)示例

    Java导出Excel是Java开发中常见的需求,尤其在数据分析、报表生成或数据交换场景中。本示例资源提供了一个RAR压缩包,包含了实现这一功能的源代码,主要讲解了两个核心部分:一是如何将数据写入Excel文件并保存在...

    java导出excel复杂表头

    本示例涉及的主题是“java导出excel复杂表头”,这意味着我们要处理的不是简单的单级表头,而是包含多级或者多层次结构的表头。在描述中提到这是一个可以直接运行的Java工程,但需要进一步改造为Web下载服务。 首先...

    java导出Excel 时候 相同行合并

    java导出Excel 时候 相同行合并(可合并多列); 已测试通过;

    java导出excel及POI3.10jar包

    Java导出Excel是Java开发中常见的一项任务,特别是在数据分析、报表生成或数据交换等领域。Apache POI是一个流行的开源库,允许Java程序读取和写入Microsoft Office格式的文件,包括Excel(.xls和.xlsx)。在本场景...

    java导出exceljava导出exceljava导出excel

    java导出excel

    java导出excel的相关jar

    压缩包中的文件"java导出excel"很可能包含了使用这两种库的示例代码或教程资源,你可以通过解压并学习这些文件来深入理解如何在Java中实现数据到Excel的导出。记得在实际使用时,要根据项目需求选择合适的技术,并...

    Java 导出Excel.zip

    "Java 导出Excel.zip"这个压缩包文件提供了一个Java实现的解决方案,允许开发者以全泛型的方式方便地导出数据到Excel文件,而且支持动态创建不同数量的sheet页面,增强了灵活性。 1. **Java与Excel交互**:Java中...

    java导出excel 在web项目

    Java导出Excel在Web项目中的应用是一个常见的需求,特别是在企业级开发中,为了方便数据的存储、分析和传输,往往需要将数据库中的数据导出为Excel格式。下面将详细介绍这个主题,包括相关技术和实现步骤。 1. **...

    java导出excel树结构工具类

    该工具类实现java导出树形结构的方法,并未采用excel分组功能实现,而是根据树节点显示层级设置excel样式。针对easyUi,treeGrid开发的导出excel功能。方法简便实用、性强、通俗易懂。项目中亲测,no problem。

    java 导出excel例子,使用poi

    java导出excel例子,使用的是poi,可以分sheet导出,可以导出txt

    java导出Excel表格

    在压缩包中的"java导出Excel"文件可能是项目的源代码,包含了实现上述功能的具体Java类和方法。分析这些源码可以帮助我们更深入地理解如何在实际项目中应用这些知识点。 总结来说,这个项目展示了如何在Java环境中...

    java导出excel并生成折线图.java

    资源描述:一个使用java做的导出数据,并且可以在excel表生成折线图的工具类,使用简单操作方便。

    Java导出excel

    ### Java导出Excel知识点 #### 一、导出Excel的核心技术背景 在现代软件开发过程中,数据导出是一项常见的需求,尤其是将数据从数据库或内存中的数据结构导出到Excel文件,这为用户提供了便捷的数据查看与分析方式...

    java导出excel的jar包及例子代码

    总之,Java导出Excel涉及到的主要知识点包括:Apache POI库的使用,Workbook、Sheet、Row和Cell对象的创建和操作,以及数据写入和文件输出。希望这个示例能帮助你理解并开始在自己的项目中实现Excel导出功能。

    java导出excel

    以下是一些关于“java导出excel”的核心知识点,以及如何实现这一功能的详细解释。 1. **Apache POI库**: Apache POI是一个流行的开源库,专门用于读写Microsoft Office格式的文件,包括Excel。使用POI,开发者...

    Java 导出excel工具类(封装,带导出格式和类型转换)

    * 导出excel(利用反射机制) * String[] title = {"订单号","商品名称","商品价格","创建时间"}; * String[] field = {"orderNum","productName","productPrice","createTime"}; * ExportTools.export("sellJoin...

    java 导出 excel

    在Java编程中,导出...总之,Java导出Excel涉及到的内容广泛,从选择合适的库到处理各种复杂需求,都需要开发者具备扎实的编程基础和对Excel文件格式的理解。通过不断实践和学习,你可以轻松应对各种Excel处理任务。

Global site tag (gtag.js) - Google Analytics