JAVA实现创建Excel表并导出(转发)
- <span style="font-family:Verdana, Arial, Helvetica, sans-serif;line-height:25.2px;background-color:rgb(255,255,255);">1.首先下载poi-3.6-20091214.jar,下载地址如下:</span>
http://download.csdn.net/detail/evangel_z/3895051
或者使用Maven仓库管理,在pom文件添加坐标
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.15</version>
</dependency>
2.Member.java 创建一个实体对象
- package com.leyooe.common.bean.customizedproperty;
- import java.util.Date;
- public class Member{
- private Integer code;
- private String name;
- private Integer age;
- private Date birth;
- public Student(Integer code, String name, Integer age, Date birth) {
- super();
- this.code = code;
- this.name = name;
- this.age = age;
- this.birth = birth;
- }
- public Integer getCode() {
- return code;
- }
- public void setCode(Integer code) {
- this.code = code;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public Integer getAge() {
- return age;
- }
- public void setAge(Integer age) {
- this.age = age;
- }
- public Date getBirth() {
- return birth;
- }
- public void setBirth(Date birth) {
- this.birth = birth;
- }
- }
3.CreateSimpleExcelToDisk.java
- package com.leyooe.otw.api.file;
- import java.io.FileOutputStream;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.List;
- import org.apache.poi.hssf.usermodel.HSSFCell;
- import org.apache.poi.hssf.usermodel.HSSFCellStyle;
- import org.apache.poi.hssf.usermodel.HSSFRow;
- import org.apache.poi.hssf.usermodel.HSSFSheet;
- import org.apache.poi.hssf.usermodel.HSSFWorkbook;
- import com.leyooe.common.bean.customizedproperty.Member;
- public class CreateSimpleExcelToDisk
- {
- /**
- * @功能:手工构建一个简单格式的Excel
- */
- private static List<Member> getMember() throws Exception
- {
- List list = new ArrayList();
- SimpleDateFormat df = new SimpleDateFormat("yyyy-mm-dd");
- Member user1 = new Member(1, "熊大", 24, df.parse("1993-08-28"));
- Member user2 = new Member(2, "熊二", 23, df.parse("1994-08-19"));
- Member user3 = new Member(3, "熊熊", 24, df.parse("1983-11-22"));
- list.add(user1);
- list.add(user2);
- list.add(user3);
- return list;
- }
- public static void main(String[] args) throws Exception
- {
- // 第一步,创建一个webbook,对应一个Excel文件
- HSSFWorkbook wb = new HSSFWorkbook();
- // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
- HSSFSheet sheet = wb.createSheet("学生表一");
- // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
- HSSFRow row = sheet.createRow((int) 0);
- // 第四步,创建单元格,并设置值表头 设置表头居中
- HSSFCellStyle style = wb.createCellStyle();
- style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
- HSSFCell cell = row.createCell((short) 0);
- cell.setCellValue("学号");
- cell.setCellStyle(style);
- cell = row.createCell((short) 1);
- cell.setCellValue("姓名");
- cell.setCellStyle(style);
- cell = row.createCell((short) 2);
- cell.setCellValue("年龄");
- cell.setCellStyle(style);
- cell = row.createCell((short) 3);
- cell.setCellValue("生日");
- cell.setCellStyle(style);
- // 第五步,写入实体数据 实际应用中这些数据从数据库得到,
- List list = CreateSimpleExcelToDisk.getMember();
- for (int i = 0; i < list.size(); i++)
- {
- row = sheet.createRow((int) i + 1);
- Member stu = (Member) list.get(i);
- // 第四步,创建单元格,并设置值
- row.createCell((short) 0).setCellValue((double) stu.getCode());
- row.createCell((short) 1).setCellValue(stu.getName());
- row.createCell((short) 2).setCellValue((double) stu.getAge());
- cell = row.createCell((short) 3);
- cell.setCellValue(new SimpleDateFormat("yyyy-mm-dd").format(stu
- .getBirth()));
- }
- // 第六步,将文件存到指定位置
- try
- {
- FileOutputStream fout = new FileOutputStream("E:/Members.xls");
- wb.write(fout);
- fout.close();
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
- }
- }
excel表格就被保存到指定位置了。
- 替换第六步可实现下载
- // 第六步,下载excel
- OutputStream out = null;
- try {
- out = response.getOutputStream();
- String fileName = "enroll.xls";// 文件名
- response.setContentType("application/x-msdownload");
- response.setHeader("Content-Disposition", "attachment; filename="
- + URLEncoder.encode(fileName, "UTF-8"));
- wb.write(out);
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- try {
- out.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
JAVA实现创建Excel表并导出(转发)的更多相关文章
- HSSFWorkBooK用法 —Excel表的导出和设置
HSSFWorkBooK用法 —Excel表的导出和设置 2013年02月21日 ⁄ 综合 ⁄ 共 9248字 ⁄ 字号 小 中 大 ⁄ 评论关闭 public ActionResult excelP ...
- POI框架实现创建Excel表、添加数据、读取数据
public class TestPOI2Excel {//创建2003版本Excel用此方法 @Test public void testWrite03Excel() throws Exceptio ...
- java POI创建Excel示例(xslx和xsl区别 )
Java用来处理office类库有很多,其中POI就是比较出名的一个,它是apache的类库,现在版本到了3.10,也就是2014年2月8号这个版本. 在处理PPT,Excel和Word前,需要导入以 ...
- HSSFWorkBooK用法 ---Excel表的导出和设置
public ActionResult excelPrint() { HSSFWorkbook workbook = new HSSFWorkbook();// 创建一个Excel文件 HSSFShe ...
- Java版将EXCEL表数据导入到数据库中
1.采用第三方控件JXL实现 try { //实例化一个工作簿对象 Workbook workBook=Workbook.getWorkbook(new File("F://qzlx.xls ...
- java+jxls利用excel模版进行导出
大多时候会出现需要导出excel的功能,利用poi可以实现简单的导出,可以说poi的功能非常强大可以做到细节的定制化操作,但相对于在office操作excel,利用poi完全生成excel会显得非常复 ...
- 如果从excel表中导出insert-sql
=CONCATENATE("INSERT INTO p_act_lottery(actId,status,grantWay,createTime,invalidTime,amount,pri ...
- 【ITOO 1】将List数据导出Excel表
需求描述:在课表导入的时候,首先给用户提供模板(excel),然后将用户填写好的数据读取到list集合中.再进行判空处赋值处理,以及去重处理.这篇博客,主要介绍读取excel表和导出excel表的方法 ...
- 使用Java创建Excel,并添加内容
使用Java创建Excel,并添加内容 一.依赖的Jar包 jxl.jar,使用jxl操作Excel Jxl是一个开源的Java Excel API项目,通过Jxl,Java可以很方便的操作微软的Ex ...
随机推荐
- YTU 2625: B 构造函数和析构函数
2625: B 构造函数和析构函数 时间限制: 1 Sec 内存限制: 128 MB 提交: 772 解决: 513 题目描述 在建立类对象时系统自动该类的构造函数完成对象的初始化工作, 当类对象 ...
- HDU 1517:A Multiplication Game
A Multiplication Game Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Ot ...
- HDU 1394 线段树or 树状数组~
Minimum Inversion Number Description The inversion number of a given number sequence a1, a2, ..., an ...
- 【Codevs1183】泥泞的道路
Position: http://codevs.cn/problem/1183/ List Codevs1183 泥泞的道路 List Description Input Output Sample ...
- 【POI2004】【Bzoj2069】T2 洞穴 zaw
T2 洞穴zaw [问题描述] 在 Byte 山的山脚下有一个洞穴入口. 这个洞穴由复杂的洞室经过隧道连接构成. 洞穴的入口是 1 号点.两个洞室要么就通过隧道连接起来,要么就经过若干隧道间接的相连. ...
- android中设置控件获得焦点
android中,要使控件获得焦点,需要先setFocus,再requestFocus. 以Button为例: btn.setFocusable(true); ...
- 响应在此上下文中不可用 asp.net
(一)实例1: 在asp.net程序中添加了一个 类.cs 如下 using System; using System.Collections; using System.ComponentModel ...
- Linux 常规操作指南
1.修改Linux服务器别名 临时修改: vim /etc/hostname 修改别名 永久修改: vim /etc/sysconfig/network 添加 HOSTNAME=别名 重启服务器 ...
- 贪心 Codeforces Round #135 (Div. 2) C. Color Stripe
题目传送门 /* 贪心:当m == 2时,结果肯定是ABABAB或BABABA,取最小改变量:当m > 2时,当与前一个相等时, 改变一个字母 同时不和下一个相等就是最优的解法 */ #incl ...
- Android 性能优化(9)网络优化( 5)Optimizing Server-Initiated Network Use
Optimizing Server-Initiated Network Use This lesson teaches you to Send Server Updates with GCM Netw ...