news 2026/6/10 15:54:53

快速创建与读取 Excel:Java 开发者必备的 Spire.XLS 实战技巧

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
快速创建与读取 Excel:Java 开发者必备的 Spire.XLS 实战技巧

在现代软件开发中,Excel 文档的管理和操作是一个常见的需求。无论是在数据分析、报表生成,还是在管理信息系统中,Excel 都扮演着重要的角色。本文将介绍如何使用 Spire.XLS for Java 库,以便轻松地读写 Excel 文档。

Spire.XLS for Java 简介

Spire.XLS 是一款强大的 Java Excel 组件,支持高效的 Excel 文件创建、编辑、读取和转换功能。无论是 .xlsx 还是 .xls 格式的文件,这个库都能轻松处理。它不仅提供了广泛的 API,还具备快速的性能和良好的文档支持,使得开发者在处理表格时更加高效。

使用 Maven 安装 Spire.XLS for Java

如果你的项目使用 Maven 作为构建工具,可以通过在 pom.xml 文件中添加以下依赖来安装 Spire.XLS:

<repositories> <repository> <id>com.e-iceblue</id> <name>e-iceblue</name> <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.xls</artifactId> <version>15.12.15</version> </dependency> </dependencies>

这样,Maven 会自动下载并包含所需的库文件,方便你在项目中使用。

读取 Excel 文件

在这一部分,我们将介绍如何读取 Excel 文件中的数据。以下是一个简单的示例代码,展示了如何加载已有的 Excel 文件,并输出其内容。

import com.spire.xls.CellRange; import com.spire.xls.Workbook; import com.spire.xls.Worksheet; public class ReadData { public static void main(String[] args) { // 创建一个 Workbook 对象 Workbook wb = new Workbook(); // 加载现有的 Excel 文件 wb.loadFromFile("C:/Users/Administrator/Desktop/NewSpreadsheet.xlsx"); // 获取第一个工作表 Worksheet sheet = wb.getWorksheets().get(0); // 获取包含数据的单元格范围 CellRange locatedRange = sheet.getAllocatedRange(); // 遍历行 for (int i = 0; i < locatedRange.getRows().length; i++) { // 遍历列 for (int j = 0; j < locatedRange.getColumnCount(); j++) { // 获取特定单元格的数据 System.out.print(locatedRange.get(i + 1, j + 1).getValue() + " "); } System.out.println(); } } }

代码解析

  1. Workbook 对象:创建一个Workbook对象,用于加载 Excel 文件。
  2. 加载文件:通过loadFromFile方法加载存在的 Excel 文件。
  3. 获取工作表:通过getWorksheets().get(0)方法获得第一个工作表。
  4. 遍历数据:使用双重循环遍历每一行和每一列,打印出单元格中的值。

写入 Excel 文件

接下来,我们将展示如何创建新的 Excel 文件,设置工作表的基本信息,并写入数据。

import com.spire.xls.*; public class CreateSpreadsheet { public static void main(String[] args) { // 创建一个 Workbook 对象 Workbook wb = new Workbook(); // 移除默认工作表 wb.getWorksheets().clear(); // 添加一个名为 "员工" 的工作表 Worksheet sheet = wb.getWorksheets().add("员工"); // 合并 A1 到 G1 的单元格 sheet.getRange().get("A1:G1").merge(); // 向 A1 写入数据并应用格式 sheet.getRange().get("A1").setValue("华宇汽车公司员工基本信息"); sheet.getRange().get("A1").setHorizontalAlignment(HorizontalAlignType.Center); sheet.getRange().get("A1").setVerticalAlignment(VerticalAlignType.Center); sheet.getRange().get("A1").getStyle().getFont().isBold(true); sheet.getRange().get("A1").getStyle().getFont().setSize(13); // 设置第一行的高度 sheet.setRowHeight(1, 30); // 创建一个二维数组 String[][] twoDimensionalArray = new String[][]{ {"姓名", "性别", "出生日期", "学历", "联系电话", "职位", "编号"}, {"艾伦", "男", "1990-02-10", "本科", "24756854", "机械师", "0021"}, {"帕特里克", "男", "1985-06-08", "硕士", "59863247", "机械师", "0022"}, {"珍娜", "女", "1989-11-25", "本科", "79540352", "销售", "0023"}, {"汤米", "男", "1988-04-16", "硕士", "52014060", "机械师", "0024"}, {"克里斯蒂娜", "女", "1998-01-21", "本科", "35401489", "人力资源", "0025"} }; // 从数组导入数据到工作表 sheet.insertArray(twoDimensionalArray, 2, 1); // 设置一个范围的行高 sheet.getRange().get("A2:G7").setRowHeight(15); // 设置列宽 sheet.setColumnWidth(2, 15); sheet.setColumnWidth(3, 21); sheet.setColumnWidth(4, 15); // 设置边框样式 sheet.getRange().get("A2:G7").borderAround(LineStyleType.Medium); sheet.getRange().get("A2:G7").borderInside(LineStyleType.Thin); sheet.getRange().get("A2:G2").borderAround(LineStyleType.Medium); sheet.getRange().get("A2:G7").getBorders().setKnownColor(ExcelColors.Black); // 保存为 .xlsx 文件 wb.saveToFile("output/NewSpreadsheet.xlsx", FileFormat.Version2016); } }

代码解析

  1. Workbook 对象:创建一个新的 Workbook 对象。
  2. 删除默认工作表:通过 clear 方法删除默认的工作表。
  3. 添加工作表:创建一个名为 "员工" 的工作表。
  4. 合并单元格:合并 A1 到 G1 的单元格。
  5. 写入数据:设置 A1 单元格的值,并调整其格式。
  6. 插入数组数据:将二维数组的数据插入到工作表中。
  7. 设置边框和格式:设置行高、列宽及单元格的边框样式。
  8. 保存文件:将工作簿保存为一个新的 Excel 文件。

总结

通过使用 Spire.XLS for Java 程序库,我们可以方便地处理 Excel 文档。无论是读取已有的数据,还是生成新的表格,Spire.XLS 都提供了极大的便利。它简单易用的 API 和丰富的功能特性,使得 Java 开发者能够轻松实现各种 Excel 操作。希望本文能够帮助你快速上手,也期待你在实际应用中发现它的更多潜能。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 15:22:09

Transformers模型训练提速秘诀:使用PyTorch-CUDA-v2.7镜像

Transformers模型训练提速秘诀&#xff1a;使用PyTorch-CUDA-v2.7镜像 在大模型研发的日常中&#xff0c;你是否经历过这样的场景&#xff1f;刚拿到一块新GPU&#xff0c;兴致勃勃准备跑起BERT训练脚本&#xff0c;结果torch.cuda.is_available()返回了False&#xff1b;或者团…

作者头像 李华
网站建设 2026/6/9 22:41:28

GitHub Template仓库快速初始化PyTorch项目

GitHub Template仓库快速初始化PyTorch项目 在深度学习项目的日常开发中&#xff0c;你是否经历过这样的场景&#xff1a;刚拿到一台新服务器&#xff0c;兴致勃勃准备跑通第一个模型&#xff0c;结果卡在了 torch.cuda.is_available() 返回 False&#xff1f;或者团队成员之间…

作者头像 李华
网站建设 2026/6/10 11:17:13

Jupyter Notebook LaTeX公式渲染PyTorch算法

Jupyter Notebook 中的 LaTeX 与 PyTorch 深度集成&#xff1a;从公式到 GPU 加速的完整实践 在深度学习研究和教学中&#xff0c;一个常见的挑战是&#xff1a;如何将复杂的数学推导、可运行的代码实现与直观的结果展示无缝融合&#xff1f;传统的开发流程往往割裂——论文用 …

作者头像 李华
网站建设 2026/6/10 11:27:26

社保代缴机构水太深?希创人事教你三步识破伪装 ​

“想找机构代缴社保&#xff0c;结果遇到虚假挂靠&#xff0c;钱交了社保没上”“选了个低价代缴机构&#xff0c;刚缴两个月对方就失联了”......社保缴费机构本是帮大家保住社保连续性的“刚需服务”&#xff0c;可偏偏有不少骗子浑水摸鱼&#xff0c;那该如何松识别真假机构…

作者头像 李华
网站建设 2026/6/10 11:20:38

Jupyter Notebook中运行PyTorch模型:PyTorch-CUDA-v2.7镜像使用详解

Jupyter Notebook中运行PyTorch模型&#xff1a;PyTorch-CUDA-v2.7镜像使用详解 在深度学习项目开发中&#xff0c;最让人头疼的往往不是模型结构设计或调参优化&#xff0c;而是环境配置——明明代码没问题&#xff0c;“在我机器上能跑”&#xff0c;换台设备却各种报错&…

作者头像 李华
网站建设 2026/6/10 11:22:20

C++基本数据类型详解(零基础掌握C++核心数据类型)

在学习C编程的过程中&#xff0c;理解C基本数据类型是每位初学者必须迈出的第一步。无论你是刚接触编程的新手&#xff0c;还是希望巩固基础知识的开发者&#xff0c;本文都将用通俗易懂的方式带你全面了解C中的基本数据类型。 什么是基本数据类型&#xff1f; 在C中&#xff…

作者头像 李华