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. 自定义ClassLoader的使用

    1 import java.io.ByteArrayOutputStream; 2 import java.io.File; 3 import java.io.FileInputStream; 4 i ...

  2. C#中存储过程和DataTable的应用

    存储过程p_OperatorDetails,有四个参数@sDatetime,@eDatetime,@operatorNo,@transdesc.其中@operatorNo和@transdesc为两个可 ...

  3. VRP OS Management

    From WizNote

  4. Spark学习进度10-DS&DF基础操作

    有类型操作 flatMap 通过 flatMap 可以将一条数据转为一个数组, 后再展开这个数组放入 Dataset val ds1=Seq("hello spark"," ...

  5. DevOps,CI,CD,自动化简单介绍

    前言: 随着企业应用的不断迭代,不断扩大,应用的发布发布可能涉及多个团队,如pc端,手机端,小程序端等等.应用发布也就成为了一项高风险,高压力的超过过程,以及应用的开发迭代的沟通,测试成本也大大的变得 ...

  6. LeetCode485 最大连续1的个数

    给定一个二进制数组, 计算其中最大连续1的个数. 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3. 注意: 输入的数组 ...

  7. 来不及解释!Linux常用命令大全,先收藏再说

    摘要:Linux常用命令,很适合你的. 一提到操作系统,我们首先想到的就是windows和Linux.Windows以直观的可视化的方式操作,特别适合在桌面端PC上操作执行相应的软件.相比较Windo ...

  8. 牛客网NC15二叉树的层次遍历

    题目 给定一个二叉树,返回该二叉树层序遍历的结果,(从左到右,一层一层地遍历) 例如: 给定的二叉树是{3,9,20,#,#,15,7}, 该二叉树层序遍历的结果是 [ [3], [9,20], [1 ...

  9. (十)Python装饰器

    装饰器:本质就是函数,功能是为其他函数添加附加功能. 两个原则: 1.不修改被修饰函数的源代码 2.不修改被修饰函数的调用方式 一个栗子 def test(): res = 0 for i in ra ...

  10. 【Oracle】translate函数用法解析

    转自:https://blog.csdn.net/shwanglp/article/details/52814173 基本语法: translate(string,from_str,to_str); ...