1. 先导包

commons-io-2.6.jar包,用于对文件的操作。

下载地址:http://commons.apache.org/proper/commons-io/download_io.cgi

poi-3.17.jar包,对Excel表的操作。

下载地址:http://poi.apache.org/download.html#POI-3.17

2. 假设Excel表的表头和主体内容

 //表头数组
String[] title = {"id","username","password","gender","address"};
//主体内容
String[][] sheetBodyValue = {
{"001","test1","123456","男","中国北京"},
{"002","test2","123456","女","中国北京"},
{"003","test3","123456","男","中国北京"},
{"004","test4","123456","女","中国北京"}
};

3. 创建Excel表

 HSSFWorkbook workBook = new HSSFWorkbook();

4. 创建excel页面,即sheet

 HSSFSheet sheet = workBook.createSheet();

5. 创建表头行

 //创建第index行 sheet.createRow(index)
HSSFRow titleRow = sheet.createRow(0);

6. 创建表头单元格,并遍历表头数组,设置表头

 for (int i = 0; i < title.length; i++) {
HSSFCell titleCell= titleRow.createCell(i);
titleCell.setCellValue(title[i]);
}

7. 从第二行开始创建主体内容

 for (int i = 1; i <= sheetBodyValue.length; i++) {
//创建第i行
HSSFRow bodyRow = sheet.createRow(i);
//创建单元格,并为每个单元格赋值
for (int j = 0; j < sheetBodyValue[0].length; j++) {
HSSFCell bodyCell = bodyRow.createCell(j);
bodyCell.setCellValue(sheetBodyValue[i-1][j]);
}
}

8. 创建文件,用文件输出流输出数据

 File file = new File("D:/poi_text.xls");
try {
file.createNewFile();
FileOutputStream outputStream = FileUtils.openOutputStream(file);
workBook.write(outputStream);
outputStream.close();//记得关闭输出流
} catch (IOException e) {
e.printStackTrace();
}

9. 最后附上全部代码

 import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException; import org.apache.commons.io.FileUtils;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook; public class testExcel { @SuppressWarnings("resource")
public static void createExcel(){
//表头数组
String[] title = {"id","username","password","gender","address"};
//主体内容
String[][] sheetBodyValue = {
{"001","test1","123456","男","中国北京"},
{"002","test2","123456","女","中国北京"},
{"003","test3","123456","男","中国北京"},
{"004","test4","123456","女","中国北京"}
}; //创建excel表
HSSFWorkbook workBook = new HSSFWorkbook();
//创建excel页面,即sheet
HSSFSheet sheet = workBook.createSheet();
//创建表头行,第index行 sheet.createRow(index)
HSSFRow titleRow = sheet.createRow(0); //创建表头,第一行
for (int i = 0; i < title.length; i++) {
HSSFCell titleCell= titleRow.createCell(i);
titleCell.setCellValue(title[i]);
} //从第二行开始创建主体内容
for (int i = 1; i <= sheetBodyValue.length; i++) {
HSSFRow bodyRow = sheet.createRow(i);//创建第i行
for (int j = 0; j < sheetBodyValue[0].length; j++) {
HSSFCell bodyCell = bodyRow.createCell(j);
bodyCell.setCellValue(sheetBodyValue[i-1][j]);
}
}
//创建文件
File file = new File("D:/poi_text.xls");
try {
file.createNewFile();
FileOutputStream outputStream = FileUtils.openOutputStream(file);
workBook.write(outputStream);
outputStream.close();//记得关闭输出流
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
createExcel();
}
}

本人也是初次接触POI对Excel表的操作,还有很多关于POI操作的知识点需要去掌握。

写一下个人对导出Excel表的操作小结。

希望与君共勉,共同进步。

POI对Excel的操作的更多相关文章

  1. POI对EXCEL的操作【重点:如何设置CELL格式为文本格式】

    实际开发过程中通常用到的就是从数据库导出EXCEL表格了,JXL可以这样做,其实POI也可以(关于JXL与POI的异同可访问我之前总结的文章),之前写过POI对七种文档(当然也包括EXCEL)的内容读 ...

  2. 学会简单使用poi进行excel有关操作

    直接上代码: 官网上的抄的api例子: package com.test; import java.io.File; import java.io.FileInputStream; import ja ...

  3. jspsmart(保存文件)+poi(读取excel文件)操作excel文件

    写在前面: 项目环境:jdk1.4+weblogic 需求:能上传excel2003+2007 由于项目不仅需要上传excel2003,还要上传excel2007,故我们抛弃了jxl(只能上传exce ...

  4. poi对EXCEL的操作(一)

    (原创自己这段时间对poi的研究心得) 一.基础的对象 1.wookbook工作簿 创建工作簿 wookbook  XSSFWorkbook类的构造方法           XSSFWorkbook ...

  5. 使用POI对excel进行操作生成二维数组

    import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...

  6. poi对excel的操作(二)

    二.进阶的对象 1.CellType 枚举类 单元格类型 CellType.STRING---文本型 等 如何是指单元格类型:cell.setCellType(CellType.STRING) 2.C ...

  7. 使用POI进行Excel操作的总结一——创建Workbook,Sheet,Row以及Cell

    前段时间,看在其他的网站上给出Excel文档的导入与导出操作,感觉很酷的样子,所以就学习了一下如何使用POI进行Excel的操作,现在对之前的学习过程进行一个总结. 一.现在普遍使用的Excel文档有 ...

  8. 用POI导出excel时,较长的数字不想被自动变为科学计数法的解决方式(转)

    做过很多次导出excel了.都碰到一个问题,内容里如果包含一个比较长的数字,比如订单号“2546541656596”,excel会自动变成科学计数法... 弄过好几次都没有解决,最近又要导出excel ...

  9. Java学习---Excel读写操作

    1.1.1. 简介 Apache POI 使用Apache POI 完成Excel读写操作 Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API ...

随机推荐

  1. SpringCloud-day05-服务调用Ribbon

    6.服务调用Ribbon 6.1Ribbon简介 前面讲了eureka服务注册与发现,但是结合eureka集群的服务调用并没有谈到.这里就要用到Ribbon,结合eureka,来实现服务的调用: Ri ...

  2. [转]11个教程中不常被提及的JavaScript小技巧

    原文地址: https://www.cnblogs.com/ld1024/p/10723827.html 这次我们主要来分享11个在日常教程中不常被提及的JavaScript小技巧,他们往往在我们的日 ...

  3. Tensorflow学习笔记2019.01.03

    tensorflow学习笔记: 3.2 Tensorflow中定义数据流图 张量知识矩阵的一个超集. 超集:如果一个集合S2中的每一个元素都在集合S1中,且集合S1中可能包含S2中没有的元素,则集合S ...

  4. python——获取文件列表

    """-------------------------------------------------------- <<获取文件列表>> () ...

  5. vim matchit 自定义配对关键字之间的跳转

    vim因其强大的扩展性一直深受linux程序员的喜爱,最近在用vim写verilog的时候,由于一个逻辑块中的begin end较多,常常会多写或者漏掉匹配关键字,很是苦恼,于是寻找匹配关键字间跳转的 ...

  6. 重启虚拟机后dhclient进程未运行解决办法

    问题分析 重启虚拟机后,dhclient进程未运行的根因通常为: 1.NetworkManager未开启自启动导致的dhclient进程未运行 2.网卡设置未纳入NetworkManager管理导致的 ...

  7. Scrapy爬取猫眼《复仇者联盟4终局之战》影评

    一.分析 首先简单介绍一下Scrapy的基本流程: 引擎从调度器中取出一个链接(URL)用于接下来的抓取 引擎把URL封装成一个请求(Request)传给下载器 下载器把资源下载下来,并封装成应答包( ...

  8. ios OC 关键字 copy,strong,weak,assign的区别

    一.先介绍 copy.strong.weak 的区别,如代码所示 @property(copy,nonatomic)NSMutableString*aCopyMStr; @property(stron ...

  9. html模板导出pdf文件

    package com.crc.commonreport.util; import java.awt.Insets; import java.io.ByteArrayOutputStream; imp ...

  10. android中ScrollView嵌套ListView或GridView显示位置问题

    Android中ScrollView中嵌套ListView或GridView时在开始进入界面时总是显示中间位置,开头的位置显示不出来.这种情况下只需要在ScrollView的父控件中添加以下两行代码即 ...