利用Apache POI 实现简单的Excel表格导出
1、利用POI API实现简单的Excel表格导出
首先假设一个学生实体类:
package com.sun.poi.domain;
import java.io.Serializable;
import java.util.Date;
public class Student implements Serializable {
private static final long serialVersionUID = 1L;
//学生ID
private int studentId;
//学生姓名
private String name;
//年龄
private int age;
//出生年月
private Date birth;
public Student() {
}
public Student(int studentId, String name, int age, Date birth) {
super();
this.studentId = studentId;
this.name = name;
this.age = age;
this.birth = birth;
}
public int getStudentId() {
return studentId;
}
public void setStudentId(int studentId) {
this.studentId = studentId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Date getBirth() {
return birth;
}
public void setBirth(Date birth) {
this.birth = birth;
}
}
利用POI 实现Excel导出功能:
package com.sun.poi.fuction;
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.sun.poi.domain.Student;
public class CreateSimpleExcelToDisk {
private static SimpleDateFormat sdf;
private static List<Student> getStudent() throws Exception{
List<Student> studentList = new ArrayList<Student>();
sdf = new SimpleDateFormat("yyyy-mm-dd");
Student stu1 = new Student(1, "张三", 12, sdf.parse("1999-12-30"));
Student stu2 = new Student(1, "李四", 12, sdf.parse("2000-4-20"));
Student stu3 = new Student(1, "王二", 12, sdf.parse("2003-12-15"));
Student stu4 = new Student(1, "麻子", 12, sdf.parse("1989-11-22"));
Student stu5 = new Student(1, "铁蛋", 12, sdf.parse("1999-5-11"));
studentList.add(stu1);
studentList.add(stu2);
studentList.add(stu3);
studentList.add(stu4);
studentList.add(stu5);
return studentList;
}
public static void main(String[] args) throws Exception {
//获取数据源
List<Student> studentList = getStudent();
//1、创建一个webbook,表示一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
//2、在Excel文件中添加一个sheet页
HSSFSheet sheet = wb.createSheet("学生信息表");
//3、在sheet页中添加表头,第一行
HSSFRow row = sheet.createRow((int)0);
//4、设置单元格的样式
HSSFCellStyle style = wb.createCellStyle();
//设置样式居中
style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
//5、创建一个单元格,并设置居中样式
HSSFCell cell = row.createCell(0);
cell.setCellValue("学号");
cell.setCellStyle(style);
cell = row.createCell(1);
cell.setCellValue("姓名");
cell.setCellStyle(style);
cell = row.createCell(2);
cell.setCellValue("年龄");
cell.setCellStyle(style);
cell = row.createCell(3);
cell.setCellValue("生日");
cell.setCellStyle(style);
for (int i = 0; i < studentList.size(); i++) {
row = sheet.createRow(i + 1);
Student stu = (Student)studentList.get(i);
row.createCell(0).setCellValue(stu.getStudentId());
row.createCell(1).setCellValue(stu.getName());
row.createCell(2).setCellValue(stu.getAge());
row.createCell(3).setCellValue(sdf.format(stu.getBirth()));
}
try {
//6、导出到磁盘上
FileOutputStream fout = new FileOutputStream("D:/student.xls");
wb.write(fout);
fout.close();
System.out.println("导出excel成功");
} catch (Exception e) {
e.printStackTrace();
}
}
}
利用Apache POI 实现简单的Excel表格导出的更多相关文章
- Java 使用Apache POI读取和写入Excel表格
1,引入所用的包 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxm ...
- Apache POI – Reading and Writing Excel file in Java
来源于:https://www.mkyong.com/java/apache-poi-reading-and-writing-excel-file-in-java/ In this article, ...
- jfinal中excel表格导出
今天工作中遇到了excel表格导出的操作,还好有写好的模板,不然我也是焦头烂额,下面记录一下excel表格导出的操作步骤,同时用来给正在学习jfinal的小伙伴一些参考和学习. 首先我们需要把表格查询 ...
- excel表格导出之后身份证号列变成了科学计数法
excel表格导出之后身份证号列变成了科学计数法 解决:写sql查询出所有数据,并在身份证列添加字符,然后导出,将要复制的excel表格设置单元格格式问文本类型,然后复制粘贴,再把加入的字符删除,搞定 ...
- 利用Apache POI操作Excel
最近在做接口,有个功能是利用Excel导入汽车发动机所需零件信息到线上系统中.简单回顾一下之前学过的用java操作Excel. 1.maven配置Apache POI pom.xml中配置POIjar ...
- 利用java反射机制实现读取excel表格中的数据
如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List<User>.Lis ...
- Java利用Apache poi导出图表
jar compile('org.apache.poi:poi:4.0.1') compile('org.apache.poi:poi-scratchpad:4.0.1') compile('org. ...
- java使用org.apache.poi读取与保存EXCEL文件
一.读EXCEL文件 package com.ruijie.wis.cloud.utils; import java.io.FileInputStream; import java.io.FileNo ...
- POI tools 参数化生成excel表格
package com.eccom.neteagle.server.confsave.service.impl; import java.io.File; import java.io.FileNot ...
随机推荐
- supermap开发webgis的经验
SuperMap 开发WebGIS的经验总结 - 综合课件 - 道客巴巴 http://www.doc88.com/p-743552004620.html
- [SQL] SQL 基础知识梳理(六)- 函数、谓词、CASE 表达式
SQL 基础知识梳理(六)- 函数.谓词.CASE 表达式 目录 函数 谓词 CASE 表达式 一.函数 1.函数:输入某一值得到相应输出结果的功能,输入值称为“参数”,输出值称为“返回值”. 2. ...
- HBuilder的webview操作
HBuilder的webview操作 webviewAPI文档:http://www.html5plus.org/doc/zh_cn/webview.html 创建新的webview窗口: Webvi ...
- rsync+inotify脚本
#!/bin/bash src=/data/ # 需要同步的源路径 des=data ...
- vs打开项目出错:未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations\CUDA 5.0.props”的解决办法
有时候由于CUDA升级或者下载的源码原创建项目的CUDA版本与自己的不同,在打开项目的时候发现加载不上,提示:未找到导入的项目“C:\Program Files (x86)\MSBuild\Micro ...
- ubuntu下命令使用
sudo apt-get -f install:修复函数依赖 df -hl:查看空间使用状况 nvidia-smi:常看GPU使用率
- 读书笔记 effective c++ Item 36 永远不要重新定义继承而来的非虚函数
1. 为什么不要重新定义继承而来的非虚函数——实际论证 假设我告诉你一个类D public继承类B,在类B中定义了一个public成员函数mf.Mf的参数和返回类型并不重要,所以假设它们都是void. ...
- GitHub中最强大的iOS Notifications和AlertView框架,没有之一!
FFToast是一个非常强大的iOS message notifications和AlertView扩展.它可以很容易实现从屏幕顶部.屏幕底部和屏幕中间弹出一个通知.你可以很容易的自定义弹出的View ...
- iOS开发之判断系统版本
if([[UIDevice currentDevice].systemVersion doubleValue]>=7.0) { //是IOS7至以上版本 }else{ //IOS7以下版本 }
- django出现__init__() got an unexpected keyword argument 'mimetype‘ 问题解决
这种问题好多新手按照djangobook学习的时候应该都遇到过,是因为这是老的django的写法,新的django已经升级改变了很多东西. 处理方法如下: I think you are not us ...