学习java生成一个简单的EXCEL表格

学习java生成一个EXCEL表格

导入maven依赖

 <!-- excel 
https://mvnrepository.com/artifact/org.apache.poi/poi -->
			<dependency>
			    <groupId>org.apache.poi</groupId>
			    <artifactId>poi</artifactId>
			    <version>3.17</version>
			</dependency>
<!--  excel -->

Jakarta POI HSSF API组件

HSSF(用于操作Excel的组件)提供给用户使用的对象在rg.apache.poi.hssf.usermodel包中,主要部分包括Excel对象,样式和格式,还有辅助操作。有以下几种对象:

​ 常用组件:

HSSFWorkbook excel的文档对象

HSSFSheet excel的表单

HSSFRow excel的行

HSSFCell excel的格子单元

HSSFFont excel字体

HSSFDataFormat 日期格式

HSSFHeader sheet头

HSSFFooter sheet尾(只有打印的时候才能看到效果)

样式:

HSSFCellStyle cell样式

辅助操作包括:

HSSFDateUtil 日期

HSSFPrintSetup 打印

HSSFErrorConstants 错误信息表

开始案例

生成一个100个用户的表格
代码:
//创建HSSFWorkbook对象(excel的文档对象)
	 HSSFWorkbook wb = new HSSFWorkbook();
	//建立新的sheet对象(excel的表单)
	HSSFSheet sheet=wb.createSheet("用户表");
	//在sheet里创建第一行,参数为行索引(excel的行),可以是0~65535之间的任何一个
	HSSFRow row1=sheet.createRow(0);
	//创建单元格(excel的单元格,参数为列索引,可以是0~255之间的任何一个
	HSSFCell cell=row1.createCell(0);
	//设置单元格内容
	cell.setCellValue("用户信息表");
	//合并单元格CellRangeAddress构造参数依次表示起始行,截至行,起始列, 截至列
	sheet.addMergedRegion(new CellRangeAddress(0,0,0,100));
	//在sheet里创建第二行
	HSSFRow row2=sheet.createRow(1);    
	      //创建单元格并设置单元格内容
	      row2.createCell(0).setCellValue("编号");
	      row2.createCell(1).setCellValue("姓名");    
	      row2.createCell(2).setCellValue("性别");
	      row2.createCell(3).setCellValue("手机号");
	      //循环输入
	      for (int i = 1; i <= 100; i++) {
	    	  HSSFRow row=sheet.createRow(i+1);
	    	  //这里是自己写的工具类生成的字符串
	    	  row.createCell(0).setCellValue(i);
	    	  row.createCell(1).setCellValue(StringUtils.getRandonCnStr(3));
	    	  row.createCell(2).setCellValue(StringUtils.getSex());
	    	  row.createCell(3).setCellValue("13"+StringUtils.getRandomNumtoStr(9));
	  	}
	//输出Excel文件
	    FileOutputStream fos=new FileOutputStream("d:/pic/testExcel/workbook.xls");
		wb.write(fos);
		fos.close();
效果展示:

在这里插入图片描述学习链接:https://www.cnblogs.com/hanfeihanfei/p/7079210.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值