POI对Excel的操作
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的操作的更多相关文章
- POI对EXCEL的操作【重点:如何设置CELL格式为文本格式】
实际开发过程中通常用到的就是从数据库导出EXCEL表格了,JXL可以这样做,其实POI也可以(关于JXL与POI的异同可访问我之前总结的文章),之前写过POI对七种文档(当然也包括EXCEL)的内容读 ...
- 学会简单使用poi进行excel有关操作
直接上代码: 官网上的抄的api例子: package com.test; import java.io.File; import java.io.FileInputStream; import ja ...
- jspsmart(保存文件)+poi(读取excel文件)操作excel文件
写在前面: 项目环境:jdk1.4+weblogic 需求:能上传excel2003+2007 由于项目不仅需要上传excel2003,还要上传excel2007,故我们抛弃了jxl(只能上传exce ...
- poi对EXCEL的操作(一)
(原创自己这段时间对poi的研究心得) 一.基础的对象 1.wookbook工作簿 创建工作簿 wookbook XSSFWorkbook类的构造方法 XSSFWorkbook ...
- 使用POI对excel进行操作生成二维数组
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...
- poi对excel的操作(二)
二.进阶的对象 1.CellType 枚举类 单元格类型 CellType.STRING---文本型 等 如何是指单元格类型:cell.setCellType(CellType.STRING) 2.C ...
- 使用POI进行Excel操作的总结一——创建Workbook,Sheet,Row以及Cell
前段时间,看在其他的网站上给出Excel文档的导入与导出操作,感觉很酷的样子,所以就学习了一下如何使用POI进行Excel的操作,现在对之前的学习过程进行一个总结. 一.现在普遍使用的Excel文档有 ...
- 用POI导出excel时,较长的数字不想被自动变为科学计数法的解决方式(转)
做过很多次导出excel了.都碰到一个问题,内容里如果包含一个比较长的数字,比如订单号“2546541656596”,excel会自动变成科学计数法... 弄过好几次都没有解决,最近又要导出excel ...
- Java学习---Excel读写操作
1.1.1. 简介 Apache POI 使用Apache POI 完成Excel读写操作 Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API ...
随机推荐
- Unity3d项目入门之虚拟摇杆
Unity本身不提供摇杆的组件,开发者可以使用牛逼的EasyTouch插件或者应用NGUI实现相关的需求,下面本文通过Unity自身的UGUI属性,实现虚拟摇杆的功能. 主参考 <Unity:使 ...
- XACT_ABORT选项
XACT_ABORT选项用于指定当SQL语句出现运行时错误时,SQL Server是否自动回滚到当前事务.其语法格式如下所示: SET XACT_ABORT{ON|OFF} 当SET XACT_ABO ...
- PIL库学习及运用
了解PIL以及安装. 个方面的功能: (1) 图像归档:对图像进行批处理.生产图像预览.图像格式转换等. (2) 图像处理:图像基本处理.像素处理.颜色处理等. 安装PIL在cmd中输入 pip in ...
- oracle 锁表sql 解锁
1.select * from v$locked_object; 查看具体的 : select session_id , oracle_username, process from v$loc ...
- rancher的微服务运维
1.安装rancher: rancher官网:https://rancher.com rancher中文官网:https://www.cnrancher.com rancher 2.0 文档:http ...
- Vue添加jquer插件
一.现象 综合开发需要,需要引用使用 二.解决 1.先安装jquer插件,命令运行: npm i jquery --save-dev (tips: i 也就是 install --save-dev ...
- Python实现对CSV文件的读写功能
我们要处理csv文件,首先要的导入csv模块 import csv #读取csv文件def readCsv(path): #传入变量csv文件的路径 list=[] #定义一个空列表 with ope ...
- python基础 (迭代器回顾,生成器,推导式)
1.迭代器回顾 可迭代对象:Iterable 可以直接作用于for循环的对象统称为可迭代对象:Iterable.因为可迭代对象里面存在可迭代协议,所以才会被迭代 可迭代对象包括: 列表(list) 元 ...
- HDU1060
#include <bits/stdc++.h> using namespace std; int main() { int n; long long x; double t,ans; c ...
- yii2.0 邮件发送如何配置
邮件发送配置: 打开配置文件将下面代码添加到 components => [...]中(例:高级版默认配置在/common/config/main-local.php) 'mai ...