POI之excel导入导出
下载地址http://poi.apache.org/
<dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.12</version> </dependency> <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.12</version> </dependency>
package com.zns.bean;public class Person {private int id;private String name;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Person(int id, String name) {super();this.id = id;this.name = name;}public Person() {super();// TODO Auto-generated constructor stub }@Overridepublic String toString() {return "Person [id=" + id + ", name=" + name + "]";}}
package com.zns.test;import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List;import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;import com.zns.bean.Person;public class Test2 {public static void main(String[] args) throws Exception {// func1();// func2();// func3(); }//导出到excelprivate static void func1() {Date currentTime = new Date();SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss");String dateStr = formatter.format(currentTime);// 导出xls用HSSFWorkbook,导出xlsx用XSSFWorkbook// String outFileName = dateStr + ".xls";// Workbook wb = new HSSFWorkbook(); String outFileName = dateStr + ".xlsx";Workbook wb = new XSSFWorkbook();Sheet sheet1 = (Sheet) wb.createSheet("sheet001");Row row = (Row) sheet1.createRow(0);String[] headers = { "编号", "姓名" };for (int i = 0; i < headers.length; i++) {Cell cell = row.createCell(i);cell.setCellValue(headers[i]);}List<Person> list = new ArrayList<Person>();list.add(new Person(1, "张三"));list.add(new Person(2, "李四"));for (int i = 0; i < list.size(); i++) {row = sheet1.createRow((int) i + 1);Person obj = (Person) list.get(i);row.createCell(0).setCellValue(obj.getId());row.createCell(1).setCellValue(obj.getName());}try {FileOutputStream fout = new FileOutputStream("D:/" + outFileName);wb.write(fout);fout.close();System.out.println("导出成功...");} catch (Exception e) {e.printStackTrace();}}//从excel导入private static void func2() throws FileNotFoundException, IOException {// InputStream is = new FileInputStream("D://test.xls");// Workbook wb = new HSSFWorkbook(is);InputStream is = new FileInputStream("D://test.xlsx");Workbook wb = new XSSFWorkbook(is);List<Person> list = new ArrayList<Person>();Sheet sheet1 = (Sheet) wb.getSheetAt(0);for (int rowNum = 1; rowNum <= sheet1.getLastRowNum(); rowNum++) {Row row = (Row) sheet1.getRow(rowNum);if (row != null) {Person obj = new Person();Cell cell0 = row.getCell(0);cell0.setCellType(Cell.CELL_TYPE_STRING);Cell cell1 = row.getCell(1);obj.setId(Integer.parseInt(cell0.getStringCellValue()));obj.setName(cell1.getStringCellValue());list.add(obj);}}System.out.println(list);}//从excel模板获取内容 再导出private static void func3() throws IOException, FileNotFoundException {// excel模板路径File fi = new File("D:\\test.xls");POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(fi));// 读取excel模板HSSFWorkbook wb = new HSSFWorkbook(fs);// 读取了模板内sheet0HSSFSheet sheet = wb.getSheetAt(0);// 在相应的单元格进行赋值HSSFCell cell = sheet.getRow(1).getCell(3);cell.setCellValue("aa");HSSFCell cell2 = sheet.getRow(3).getCell(3);cell2.setCellValue("bb");HSSFCell cell3 = sheet.getRow(0).getCell(0);cell3.setCellValue("cc");// 修改模板内容导出新文件FileOutputStream out = new FileOutputStream("D:/export.xls");wb.write(out);out.close();}}
转载于:https://www.cnblogs.com/zengnansheng/p/10389255.html
POI之excel导入导出相关推荐
- Java poi 实现excel导入导出工具类
最近项目上又要大量的涉及excel导入导出,网上各种导入导出的方式层出不穷,我是比较青睐官方的poi,但是要自己去操作工作簿对象自己一行一行的读取,会有很多的重复代码,重复劳动,也极为不美观,基于合成 ...
- 使用poi实现excel导入导出
开始准备工作,需要使用到的工具类放到了最后 1.pom文件添加依赖 <dependency><groupId>org.apache.poi</groupId>< ...
- poi实现Excel导入导出依赖
<!--文件上传组件--><dependency><groupId>commons-fileupload</groupId><artifactId ...
- SpringBoot集成文件 - 集成POI之Excel导入导出
- 一个基于POI的通用excel导入导出工具类的简单实现及使用方法
前言: 最近PM来了一个需求,简单来说就是在录入数据时一条一条插入到系统显得非常麻烦,让我实现一个直接通过excel导入的方法一次性录入所有数据.网上关于excel导入导出的例子很多,但大多相互借鉴. ...
- SpringBoot实现Excel导入导出,好用到爆,POI可以扔掉了!
在我们平时工作中经常会遇到要操作Excel的功能,比如导出个用户信息或者订单信息的Excel报表.你肯定听说过POI这个东西,可以实现.但是POI实现的API确实很麻烦,它需要写那种逐行解析的代码(类 ...
- 基于 POI 封装 ExcelUtil 精简的 Excel 导入导出
由于 poi 本身只是针对于 excel 等office软件的一个工具包,在一些常规的 excel 导入导出时,还需要再做一次精简的封装,简化代码耦合. 一.现状 本人经历过几家公司的代码封装,导入导 ...
- excel 导入导出使用poi自定义注解
excel导入导出使用poi自定义注解 最近在做一个数据导入导出的模块 在网上找了一些例子 在这里整理一下 这里就不再贴原作者的地址 (以下代码来自网上非原创 稍作简单修改) 首先引入pom.xm ...
- Java POI Excel导入导出
Java POI Excel导入导出 1.maven引入依赖 2.导入Excel 3.导出Excel 1.maven引入依赖 <!-- POI Excel 操作 --> <depen ...
最新文章
- vim无法打中文_vim+ctags+cscope+Taglist+Nerdtree打造成sourceinsight
- [启发式搜索/A*] [SCOI2005]骑士精神题解
- tensorflow加载模型
- zend 修改默认view路径,添加扩展view
- c# 获取html中指定标签信息,c# – 如何解析图像标签的HTML字符串以获取SRC信息?...
- linux shell文件锁,shell脚本实现文件锁功能
- 超频,如何超频CPU和显卡?
- android 获取mac地址
- java8 求list最大值
- 计算机交并符号,数学并集符号
- 2019年全国大学生电子设计竞赛试题 简易电路特性测试仪(D) 题 设计报告
- 开源网络教学平台SAKAI开发环境的搭建
- Java制作小工具 局域网聊天工具
- chrome刷新缓存
- 数字转为汉语中人民币的大写
- 微信授权登录基本流程(网站应用)
- Entry name ‘res/layout/test_toolbar.xml‘ collided
- 情人节适合送礼的数码好物有哪些?心意满满的数码好物清单
- (转)超全整理!Linux性能分析工具汇总合集
- 根据日期计算属于第几周(周日是一周的第一天)