java POI创建HSSFWorkbook工作簿
1. POI
Apache POI 是基于 Office Open XML 标准(OOXML)和 Microsoft 的 OLE 2 复合文档格式(OLE2)处理各种文件格式的开源项目。
2. 样式设置
//设置标题
HSSFCellStyle titleStyle = workbook.createCellStyle(); // 创建标题样式
titleStyle.setAlignment(HorizontalAlignment.CENTER);// 设置标题水平居中显示
titleStyle.setVerticalAlignment(VerticalAlignment.CENTER);// 设置标题垂直居中显示
//设置上下左右四个边框 实线 or虚线
// titleStyle.setBorderTop(HSSFBorderFormatting.BORDER_THIN);
titleStyle.setBorderTop(BorderStyle.THICK);
titleStyle.setBorderBottom(BorderStyle.THICK);
titleStyle.setBorderLeft(BorderStyle.THICK);
titleStyle.setBorderRight(BorderStyle.THICK);
//设置上下左右四个边框颜色
titleStyle.setTopBorderColor(HSSFColor.RED.index);
titleStyle.setBottomBorderColor(HSSFColor.RED.index);
titleStyle.setLeftBorderColor(HSSFColor.RED.index);
titleStyle.setRightBorderColor(HSSFColor.RED.index);
//设置背景颜色
titleStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); //设置填充方案
// titleStyle.setFillForegroundColor(new XSSFColor(new Color(181,181,181))); //设置填充颜色
//titleStyle.setFillForegroundColor((short) 80);
HSSFFont titleFont = workbook.createFont(); // 创建标题字体
titleFont.setItalic(false); // 设置字体为斜体字
titleFont.setColor(Font.COLOR_RED); // 将字体设置颜色
titleFont.setFontHeightInPoints((short)16); // 将字体大小
titleFont.setFontName("宋体"); // 设置字体为 宋体 应用到当前单元格上
titleFont.setBold(true);//加粗
titleStyle.setFont(titleFont); // 字体应用到 标题样式上
//设置内容
HSSFCellStyle contextCellStyle = workbook.createCellStyle();
//contextCellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
//contextCellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
contextCellStyle.setAlignment(HorizontalAlignment.CENTER);
contextCellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
Font cellFont = workbook.createFont();
cellFont.setColor(Font.COLOR_NORMAL);
cellFont.setFontHeightInPoints((short)15);
cellFont.setFontName("宋体");
contextCellStyle.setFont(cellFont);
3. 创建、设置、生成工作簿
//创建工作簿
HSSFWorkbook workbook=new HSSFWorkbook();
Sheet sheet = workbook.createSheet("会议导出");
// 设置 列 的宽度
//sheet.setColumnWidth(0, 900 * 10);
//sheet.setColumnWidth(1, 900 * 10);
//sheet.setColumnWidth(2, 900 * 10);
//sheet.setColumnWidth(3, 900 * 10);
//sheet.setColumnWidth(4, 900 * 10);
//标题
Row titleRow = sheet.createRow(0);
//设置行高40px
titleRow.setHeight((short)(15.625*40));
titleRow.setHeightInPoints((float)40);
for (int i = 0; i < titles.length; i++) {
//设置每列宽高
sheet.setColumnWidth(i, 900 * 15);
Cell cell = titleRow.createCell(i);
cell.setCellValue(titles[i]);
cell.setCellStyle(titleStyle);
}
//内容
for (int i = 0; i < userList.size(); i++) {
Row contextRow = sheet.createRow(i+1);
for (int j = 0; j < column.length; j++) {
Cell contextRowCell = contextRow.createCell(j);
contextRowCell.setCellValue(list.get(i).get(column[j]).toString());
contextRowCell.setCellStyle(contextCellStyle);
}
}
File file = new File("C:\\Users\\Desktop\\export-dep");
if (!file.exists()){
file.mkdir();
}
String path = file.getPath()+"\\"+execlName;
FileOutputStream fileOutputStream = new FileOutputStream(path);
workbook.write(fileOutputStream);
fileOutputStream.flush();
// 操作结束,关闭文件
fileOutputStream.close();
workbook.close();
3.Maven依赖
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.17</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>3.17</version>
</dependency>
java POI创建HSSFWorkbook工作簿的更多相关文章
- POI教程之第一讲:创建新工作簿, Sheet 页,创建单元格
第一讲 Poi 简介 Apache POI 是Apache 软件基金会的开放源码函数库,Poi提供API给java程序对Microsoft Office格式档案读和写的功能. 1.创建新工作簿,并给工 ...
- 使用SPIRE.XLS来创建Excel 工作簿
使用SPIRE.XLS来创建Excel 工作簿 概要 最近在研究 .NET 控件,使用这些控件在程序中可以快速低成本实现功能. 在这一篇中我们使用的控件是Spire.XL ...
- java操作Excel的poi 遍历一个工作簿
遍历一个工作簿 package com.java.poi; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.h ...
- java POI创建Excel示例(xslx和xsl区别 )
Java用来处理office类库有很多,其中POI就是比较出名的一个,它是apache的类库,现在版本到了3.10,也就是2014年2月8号这个版本. 在处理PPT,Excel和Word前,需要导入以 ...
- Java POI Excel 导入导出
这个东西很容易懂,不是特别难,难就难在一些复杂的计算和Excel格式的调整上. 近期写了一个小列子,放上来便于以后使用. POI.jar下载地址:http://mirror.bit.edu.cn/ap ...
- POI教程之第二讲:创建一个时间格式的单元格,处理不同内容格式的单元格,遍历工作簿的行和列并获取单元格内容,文本提取
第二讲 1.创建一个时间格式的单元格 Workbook wb=new HSSFWorkbook(); // 定义一个新的工作簿 Sheet sheet=wb.createSheet("第一个 ...
- Java Struts2 POI创建Excel文件并实现文件下载
Java Struts2 POI创建Excel文件并实现文件下载2013-09-04 18:53 6059人阅读 评论(1) 收藏 举报 分类: Java EE(49) Struts(6) 版权声明: ...
- java操作Excel的poi 创建一个sheet页
package com.java.poi; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.us ...
- c# 创建Excel com加载项Ribbon动态加载工作簿和工作表
使用 VSTO 创建外接程序,Gallery控件动态加载工作簿名称 代码如下: 加载工作簿名称: private void Gallery1_ItemsLoading(object sender, R ...
- 用openpyxl创建工作簿和工作表
import osimport openpyxl #设置默认路径os.chdir(r'D:/openpyxl/') #创建工作簿变量 wb = openpyxl.Workbook() #创建工作表变量 ...
随机推荐
- nodejs mongo数据库连接、查询、显示
初学nodejs,涉及内容太多,总找不到如何能处理数据之间的交换.提取,显示.查找众多资料,终于调试成功,为免遗忘,特记录如下: 安装nodejs,mongo数据库在这里不做记录了. 1.编写serv ...
- kettle连接mysql报Communications link failure
添加2个命名参数 1.autoReconnect=true 2.useSSL=false
- 2020.4.2关于java.pta的总结
0.前言 本文是有关pta2020.3至2020.4所有面向对象程序课程(java)共三次作业的阶段性总结,是java学习最开始起步时期的成果. 1.作业过程总结 这三次作业,是从c++过渡到java ...
- mysql知识点二
1.mysql中的语言有哪些?分别代表什么意思1.DDL(Data Define Language) 数据定义语言2.DML(Data Manipulation Language) 数据操作语言3.D ...
- 删除Mac版word上方的Mathtype
原因 Mac升级到macOS Catalina v10.15.3发现mathtype用不了, Mathtype官网说目前暂时不支持这个版本的系统. 现在尴尬的是, mathtype删除了, 但一不小心 ...
- POI 获取chekbox textbox (精准定位)
方式1:POI 方式2: xls 获取checkbox , 已经checkbox 的 label (如果shape name 读取时一直为空, 用wps 打开excel , 保存后在测试) ...
- ElseViewer--校稿
1Edit ModeThis presents the proof in continuous scroll to review and make corrections. By default, y ...
- AIR32F103(十一) 在AIR32F103上移植微雪墨水屏驱动
目录 AIR32F103(一) 合宙AIR32F103CBT6开发板上手报告 AIR32F103(二) Linux环境和LibOpenCM3项目模板 AIR32F103(三) Linux环境基于标准外 ...
- Spring Boot 入门学习笔记
0x01 前言 大一选修课C++/JAVA二选一,选学了C++.但在后续课程中,发现JAVA的用途很多,所以简单学习了JAVA的语法.同时,也开始了我的Spring Boot 春季|家 (spri ...
- ZOJ 3735 Josephina and RPG (概率dp)
题意:给你一个n,然后给你C(n,3)个队伍, 给你每个队伍之间的胜率. 接下来给你m个队伍,让你依次跟他们比赛,开始你能选择任意的队伍,如果你打赢了一支队伍,你可以选择换成输给你的这个队伍或者不换, ...