package com.jy.demo.web;

import java.io.FileOutputStream;

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.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class TestExcel { public static void main(String[] args) throws Exception {
Workbook wb = new XSSFWorkbook(); // or new XSSFWorkbook(); Sheet sheet = wb.createSheet("sheet1");
Row rowt = sheet.createRow(0); Cell cellt = rowt.createCell(0);
cellt.setCellValue("学号"); Cell cell1t = rowt.createCell(1);
cell1t.setCellValue("姓名"); Cell cell2t11 = rowt.createCell(2);
cell2t11.setCellValue("性别"); Cell cell2t = rowt.createCell(3);
cell2t.setCellValue("科目"); Cell cell2t1 = rowt.createCell(4);
cell2t1.setCellValue("成绩"); // 创建单元格样式对象
XSSFCellStyle alignStyle = (XSSFCellStyle) wb.createCellStyle();
alignStyle.setAlignment(XSSFCellStyle.ALIGN_CENTER); // 居中对齐
alignStyle.setVerticalAlignment(XSSFCellStyle.VERTICAL_CENTER);
cellt.setCellStyle(alignStyle); int y = 2;
int num = 0;
for (int i = 1; i <= 30; i = i + 3) {
num++;
Row row1 = sheet.createRow(i); Cell cell1 = row1.createCell(0);
sheet.addMergedRegion(CellRangeAddress.valueOf("$A$" + y + ":$A$"+ (y + 2)));
cell1.setCellValue("00" + num);
cell1.setCellStyle(alignStyle); Cell cell2 = row1.createCell(1);
sheet.addMergedRegion(CellRangeAddress.valueOf("$B$" + y + ":$B$"+ (y + 2)));
cell2.setCellValue("张三");
cell2.setCellStyle(alignStyle); Cell cell21 = row1.createCell(2);
sheet.addMergedRegion(CellRangeAddress.valueOf("$C$" + y + ":$C$"+ (y + 2)));
cell21.setCellValue("男");
cell21.setCellStyle(alignStyle); y = y + 3; Cell cell3 = row1.createCell(3);
cell3.setCellValue("语文"); Row row2 = sheet.createRow(i + 1);
Cell cellr2 = row2.createCell(3);
cellr2.setCellValue("数学"); Row row3 = sheet.createRow(i + 2);
Cell cellr3 = row3.createCell(3);
cellr3.setCellValue("英语"); Cell cell4 = row1.createCell(4);
cell4.setCellValue("1222"); Cell cell41 = row2.createCell(4);
cell41.setCellValue("98"); Cell cell411 = row3.createCell(4);
cell411.setCellValue("981"); }
FileOutputStream fileOut = new FileOutputStream("E:\\workbook.xls");
wb.write(fileOut);
fileOut.close();
} }

java-poi创建模板的更多相关文章

  1. java POI创建Excel示例(xslx和xsl区别 )

    Java用来处理office类库有很多,其中POI就是比较出名的一个,它是apache的类库,现在版本到了3.10,也就是2014年2月8号这个版本. 在处理PPT,Excel和Word前,需要导入以 ...

  2. Java Struts2 POI创建Excel文件并实现文件下载

    Java Struts2 POI创建Excel文件并实现文件下载2013-09-04 18:53 6059人阅读 评论(1) 收藏 举报 分类: Java EE(49) Struts(6) 版权声明: ...

  3. java操作Excel的poi 创建一个sheet页

    package com.java.poi; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.us ...

  4. java poi 操作ppt

    java poi 操作ppt 可以参考: https://www.w3cschool.cn/apache_poi_ppt/apache_poi_ppt_installation.html http:/ ...

  5. apache poi根据模板导出excel

    需要预先新建编辑好一个excel文件,设置好样式. 编辑好输出的数据,根据excel坐标一一对应. 支持列表数据输出,列表中列合并. 代码如下: package com.icourt.util; im ...

  6. java 读写word java 动态写入 模板文件

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

  7. 【poi xlsx报错】使用POI创建xlsx无法打开

    如果使用的XSSFWorkbook创建的xls,打开的时候会有这样的提示: 这样 XSSFWorkbook 和HSSFWorkbook的区别. HSSF - 提供读写Microsoft Excel X ...

  8. java poi操作excel 添加 锁定单元格保护

    Excel的book保护是很常用的,主要是不想让别人修改Excel的时候用.这样能够避免恶意随便修改数据,提高数据的可信度. 下面介绍JAVA POI来实现设置book保护: 使用HSSFSheet类 ...

  9. Java 后台创建word 文档

    ---恢复内容开始--- Java 后台创建 word 文档 自己总结  网上查阅的文档 分享POI 教程地址:http://www.tuicool.com/articles/emqaEf6 方式一. ...

  10. 重构:以Java POI 导出EXCEL为例

    重构 开头先抛出几个问题吧,这几个问题也是<重构:改善既有代码的设计>这本书第2章的问题. 什么是重构? 为什么要重构? 什么时候要重构? 接下来就从这几个问题出发,通过这几个问题来系统的 ...

随机推荐

  1. ASP.Net中的TreeView控件中对节点的上移和下移操作

    Web中的TreeView中的没有PreNode和NextNode属性. 但它的集合属性中有一个IndexOf属性,从而能够找到它的前一个节点知后一个节点. TreeView中要么只有一个根节点:要么 ...

  2. U盘容量变小处理

    参考: https://blog.csdn.net/weixin_39792252/article/details/80676300?utm_medium=distribute.pc_relevant ...

  3. Sqoop(一)安装及基本使用

    Sqoop:     1.sqoop从数据库中导入数据到HDFS     2.SQOOP从数据库导入数据到hive     3.sqoop从hive中将数据导出到数据库   sqoop底层还是执行的m ...

  4. Python之 time 与 datetime模块

    time与datetime模块 一.time 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏 ...

  5. 最开始的总结——JAVA

    <最开始的总结> 回答自己几个问题:为什么去学它?学它有什么用?怎样去学它?自己目前目标是什么?估计自己会花多长时间去学习这些? 一.为什么学习Java,它有什么用? 答:我看中的是Jav ...

  6. 多媒体开发(5)&音频特征:声音可以调大一点吗?

    基本上,现在常用的声音采样办法是pcm,而对于压缩音频的解码,得到的也pcm数据.这个pcm数据,只是一堆数值,有正有负,看这个值看不出什么花样. 声音采集,采的是什么呢? 采的是声音的强度变化,也是 ...

  7. 值得推荐的C#不同版本语言特性

    C#语言在不断地版本升级中,为我们提供了很多新的语言特性.其中,有很多使用的语言特性,我觉得在实际开发中用起来很方便,能够简化我们的代码,增强可读性,提高开发效率. 小编不才,在这里给大家整理了一些实 ...

  8. 我的程序员之路:自学Java篇

    序章 时光疾驰,从事IT行业已两年有余. 16年11月开始自学Java,从此开启自学之路,后来实习期自学大数据.python.爬虫等,最终成长为一名平凡的程序员.回首望去,一路上的过往历历在目,有初学 ...

  9. 【Java基础】Java10 新特性

    Java10 新特性 局部变量类型推断 局部变量的显示类型声明,常常被认为是不必须的. 场景一:类实例化时.在声明一个变量时,总是习惯了敲打两次变量类型,第一次用于声明变量类型,第二次用于构造器. 场 ...

  10. SpringBoot配置文件(1)

    配置文件 1.配置文件 SpringBoot使用一个全局的配置文件 application.properties application.yml 配置文件名是固定的: 他的作用是修改SpringBoo ...