使用JAVA中的poi包操作excel文档-读写篇(excel为xlsx版本)

前言

日常工作学习中,Excel是我们经常要用到的工具。在处理大量的数据时,使用程序去处理数据可以减少大量的工作量。下面我记录了一些自己在学习使用Java去操作Excel中遇到的问题和解决方面,主要用于记录自己的学习过程,算是一个学习笔记,也给有需要的朋友提供一些帮助。


如何使用JAVA中的poi包去操作Excel(这里只针对xlsx版本的excel)

1.导入poi包

首先要给你的exclipse中导入poi包,我将poi包的百度云链接分享在下面,下面是导入步骤。
第一步:选择你创建的项目右击,选择Build Path,再选择Configure Build Path

第二步:点击Add External JARs
在这里插入图片描述
第三步:选择poi包,路径为你下载的地方,选择jar包(注意ooxml-lib和lib里也有jar包也需要导入),点击打开
在这里插入图片描述
第四步:这里是将所有的jar包(包括ooxml-lib和lib里也有jar包)导入后的,点击Apply and Close
在这里插入图片描述poi的jar包就导入成功了
在这里插入图片描述

2.使用poi中的方法去操作excel

2.1关于excel版本选择问题

不同版本的excel有不同的方法,下表给出xlsx和xls版本有什么不同

Excel.xlsx Excel.xls
核心结构是 XML 类型的结构,采用的是基于 XML 的压缩方式,使其占用的空间更小。xlsx 中最后一个 x 的意义就在于此。 特有的二进制格式,其核心结构是复bai合文档类型的du结构
excel2007及以后版本生成的文件格式。 excel2003及以前版本生成的文件格式
xlsx格式是向下兼容的,可兼容xls格式

我个人在操作过程中发现的一个大不同是,xls版本的excel只有256列,如果你需要操作大量数据,选择xlsx是明智的,在这里我个人推荐使用xlsx类型的。
ps:我之前使用xls,结果由于数据太多发现xls列数不够了,只能重新选择xlsx做了。

2.2使用poi操作excel,读和写(以下仅针对xlsx版本excel)

操作excel的一个主要框架:

public class Test1 {
   
public static void main(String[] args) throws FileNotFoundException, IOException {
   
	try {
   
	//读取Excel表,括号里为文件地址
	XSSFWorkbook excel=new XSSFWorkbook(new FileInputStream("C:\\Users\\han tong xue\\Desktop\\test.xlsx"));
	//获取Excel表的第一个sheet,getSheetAt方法从0开始依次代表各个sheet表
	XSSFSheet sheet1 = excel.getSheetAt
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
JavaExcel文件(.xlsx)有多种方法,其比较常用的是使用Apache POI库。以下是一个简单示例: 1. 导入Apache POI库 你可以在Maven项目添加以下依赖项: ```xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.1.2</version> </dependency> ``` 或者下载POI库的jar并将其添加到项目。 2. Excel文件 ```java import java.io.File; import java.io.FileInputStream; import java.io.IOException; 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.xssf.usermodel.XSSFWorkbook; public class ReadExcel { public static void main(String[] args) { try { FileInputStream file = new FileInputStream(new File("example.xlsx")); // 创建工作簿 Workbook workbook = new XSSFWorkbook(file); // 选择第一个工作表 Sheet sheet = workbook.getSheetAt(0); // 迭代行 for (Row row : sheet) { // 迭代单元格 for (Cell cell : row) { // 获取单元格的值 String cellValue = cell.getStringCellValue(); System.out.print(cellValue + "\t"); } System.out.println(); } // 关闭工作簿 workbook.close(); } catch (IOException e) { e.printStackTrace(); } } } ``` 上面的代码打开名为“example.xlsx”的Excel文件并打印出所有单元格的值。 3. Excel文件 ```java import java.io.FileOutputStream; import java.io.IOException; 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.xssf.usermodel.XSSFWorkbook; public class WriteExcel { public static void main(String[] args) { try { // 创建工作簿 Workbook workbook = new XSSFWorkbook(); // 创建工作表 Sheet sheet = workbook.createSheet("Sheet1"); // 创建行 Row row = sheet.createRow(0); // 创建单元格并设置值 Cell cell = row.createCell(0); cell.setCellValue("Hello, world!"); // 入文件 FileOutputStream file = new FileOutputStream("example.xlsx"); workbook.write(file); // 关闭工作簿 workbook.close(); } catch (IOException e) { e.printStackTrace(); } } } ``` 上面的代码创建了一个名为“Sheet1”的工作表,并在第一行第一列入了“Hello, world!”。最后将工作簿保存到名为“example.xlsx”的文件

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值