Java 实现Excel转HTML、或HTML转Excel

Excel是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言。虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,以便更好地利用和展示数据。本文将介绍如何通过 Java 实现 Excel 与 HTML 格式之间的相互转换。

目录

  • 将Excel文档转换为HTML格式
  • 将指定工作表转换为HTML格式并嵌入图片
  • 将HTML文件转换为Excel XLS/ XLSX格式

安装免费Java库 - Free Spire.XLS for Java 。该免费库可执行各种Excel文档处理操作,但有一定页面限制。我们可以该链接下载产品包后手动引入jar包,或者直接通过Maven仓库安装。

<repositories><repository><id>com.e-iceblue</id><name>e-iceblue</name><url>https://repo.e-iceblue.cn/repository/maven-public/</url></repository>
</repositories>
<dependency><groupId>e-iceblue</groupId><artifactId>spire.xls.free</artifactId><version>5.3.0</version>
</dependency>

将Excel文档转换为HTML格式

使用 Workbook 类的 saveToFile(String fileName, FileFormat.HTML) 方法可以将加载的Excel文档转换为HTML文件。代码如下:

import com.spire.xls.*;public class ExcelToHtml {public static void main(String[] args) {//加载Excel工作簿Workbook wb = new Workbook();wb.loadFromFile("表格.xlsx");//将工作簿保存为htmlwb.saveToFile("Excel转Html.html",FileFormat.HTML);}
}

将指定工作表转换为HTML格式并嵌入图片

除了将整个Excel工作簿转换为HTML文件外,还可以先获取一张指定的工作表,然后使用Worksheet 类的 saveToHtml() 方法将工作表保存为 html。

转换时还能通过将 HTMLOptions 类的 setImageEmbedded() 方法设置为 true 来将工作表中的图片嵌入到HTML文件中。代码如下:

import com.spire.xls.*;
import com.spire.xls.core.spreadsheet.HTMLOptions;public class sheetToHtml {public static void main(String[] args) {//加载Excel文档Workbook wb = new Workbook();wb.loadFromFile("表格.xlsx");//获取工作表Worksheet sheet = wb.getWorksheets().get(1);//设置嵌入图片HTMLOptions options = new HTMLOptions();options.setImageEmbedded(true);//将工作表保存为htmlsheet.saveToHtml("SheetToHtml.html",options);}
}

将HTML文件转换为Excel XLS/ XLSX格式

该免费Excel库还支持通过 loadFromHtml() 方法加载HTML文件,然后再通过saveToFile() 方法将其转换为Excel的XLS 或 XLSX格式。代码如下

import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;public class ConvertHtmlToExcel {public static void main(String[] args) {// 加载 HTML 文件Workbook workbook = new Workbook();workbook.loadFromHtml("示例.html");// 将 HTML 文件保存为 Excel XLSX 或 XLS 格式workbook.saveToFile("Html转XLSX.xlsx", ExcelVersion.Version2016);workbook.saveToFile("Html转XLS.xls", ExcelVersion.Version97to2003);workbook.dispose();}}

  1. 如遇到任何问题,可前往论坛交流。

中文技术支持https://www.e-iceblue.com/forum/forum-f16.html?sid=8e7a68eedac8c190c2c8a3c98a6afefa

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/7759.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式蓝桥杯电子赛嵌入式(第14届国赛真题)总结

打开systic 生成工程编译查看是否有问题同时打开对应需要的文档 修改名称的要求 5.简单浏览赛题 选择题&#xff0c;跟单片机有关的可以查相关手册 答题顺序 先从显示开始看 1,2 所以先打开PA1的定时器这次选TIM2 从模式、TI2FP2二通道、内部时钟、1通道设为直接2通道设置…

Oracle Agile PLM Web Service Java示例测试开发(一)环境环境、准备说明

1 说明 1.1 PLM信息介绍 PLM&#xff1a;Oracle的产品Agile PLM&#xff08;Agile Product Lifecycle Management&#xff09; 版本号&#xff1a;9.3.6 (Build 47) Path&#xff1a;https://IP:7002/Agile/default/login-cms.jsp 1.2 开发工具和环境说明 开发工具&#xf…

引领产品创新: 2025 年 PM 效能倍增法则

本文讲述 PM 如何利用 AI 做到效率倍增&#xff0c;非常有借鉴意义&#xff0c;故而翻译于此。 原文链接&#xff1a;https://www.news.aakashg.com/p/the-ai-pms-playbook 在产品圈有一个广为流传的说法&#xff1a; “每个产品经理都应该成为 AI 产品经理。” 这个观点有一…

unity学习20:time相关基础 Time.time 和 Time.deltaTime

目录 1 unity里的几种基本时间 1.1 time 相关测试脚本 1.2 游戏开始到现在所用的时间 Time.time 1.3 时间缩放值 Time.timeScale 1.4 固定时间间隔 Time.fixedDeltaTime 1.5 两次响应时间之间的间隔&#xff1a;Time.deltaTime 1.6 对应测试代码 1.7 需要关注的2个基本…

在Windows系统中本地部署属于自己的大语言模型(Ollama + open-webui + deepseek-r1)

文章目录 1 在Windows系统中安装Ollama&#xff0c;并成功启动&#xff1b;2 非docker方式安装open-webui3下载并部署模型deepseek-r1 Ollama Ollama 是一个命令行工具&#xff0c;用于管理和运行机器学习模型。它简化了模型的下载与部署&#xff0c;支持跨平台使用&#xff0c…

996引擎 - NPC-动态创建NPC

996引擎 - NPC-动态创建NPC 创建脚本服务端脚本客户端脚本参考资料有个小问题,创建NPC时没有控制朝向的参数。所以。。。自己考虑怎么找补吧。 创建脚本 服务端脚本 Mir200\Envir\Market_Def\test\test001-3.lua -- NPC入口函数 function main(player)-- 获取玩家的用户名…

【云安全】云原生-Docker(五)容器逃逸之漏洞利用

漏洞利用逃逸 通过漏洞利用实现逃逸&#xff0c;主要分为以下两种方式&#xff1a; 1、操作系统层面的内核漏洞 这是利用宿主机操作系统内核中的安全漏洞&#xff0c;直接突破容器的隔离机制&#xff0c;获得宿主机的权限。 攻击原理&#xff1a;容器本质上是通过 Linux 的…

82,【6】BUUCTF WEB .[CISCN2019 华东南赛区]Double Secret

进入靶场 提到了secret&#xff0c;那就访问 既然这样&#xff0c;那就传参看能不能报错 这个页面证明是有用的 传参长一点就会报错&#xff0c;传什么内容无所谓 所以网站是flask框架写的 有一个颜色深一点&#xff0c;点开看看 rc4加密url编码 import base64 from urllib…

高频 SQL 50 题(基础版)_620. 有趣的电影

高频 SQL 50 题&#xff08;基础版&#xff09;_620. 有趣的电影 一级目录 表&#xff1a;cinema id 是该表的主键(具有唯一值的列)。 每行包含有关电影名称、类型和评级的信息。 评级为 [0,10] 范围内的小数点后 2 位浮点数。 编写解决方案&#xff0c;找出所有影片描述为 …

React 前端框架实战教程

&#x1f4dd;个人主页&#x1f339;&#xff1a;一ge科研小菜鸡-CSDN博客 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; 引言 React 是由 Facebook 开发的前端 JavaScript 库&#xff0c;旨在构建高效、灵活的用户界面&#xff0c;尤其适用于单页应用…

【Linux线程总结】VMA ELF 地址转换 同步和互斥 条件变量 PC模型 循环队列 POSIX信号量 线程池

文章目录 VMAELF地址转换线程相关函数同步和互斥引入条件变量总结条件变量PC模型循环队列POSIX信号量接口posix信号量和systemV信号量主要异同适用场景总结 基于循环队列的PCModel 锁--条件变量--信号量 的产生由来线程相关问题线程池回顾进程池 VMA ELF Executable and Linka…

基于ESP32的桌面小屏幕实战[6]:环境搭建和软件基础

摘要 本文分为两部分&#xff1a;Linux开发环境搭建和软件基础。Linux开发环境搭建介绍了Ubuntu虚拟机安装及SSH、Samba配置&#xff0c;可以实现用VSCode操作虚拟机。为了后续工作&#xff0c;搭建了乐鑫ESP32 SDK环境。软件基础介绍了Linux开发常用的软件基础&#xff0c;包…

FreeRtos的使用教程

定义&#xff1a; RTOS实时操作系统, (Real Time Operating System), 指的是当外界事件发生时, 能够有够快的响应速度,调度一切可利用的资源, 控制实时任务协调一致的运行。 特点&#xff1a; 支持多任务管理&#xff0c; 处理多个事件&#xff0c; 实现更复杂的逻辑。 与计算…

【精选】基于数据挖掘的招聘信息分析与市场需求预测系统 职位分析、求职者趋势分析 职位匹配、人才趋势、市场需求分析数据挖掘技术 职位需求分析、人才市场趋势预测

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

Go中的三种锁

Go 中的锁 Go 语言提供了多种锁机制&#xff0c;用于在并发编程中保护共享资源。常见的锁包括 互斥锁、读写锁 和 sync.Map 的安全锁。 1. 互斥锁&#xff08;Mutex&#xff09; 原理 互斥锁&#xff08;sync.Mutex&#xff09;是一种最简单的锁机制&#xff0c;用于保护共…

2025美赛数学建模C题:奥运金牌榜,完整论文代码模型目前已经更新

2025美赛数学建模C题&#xff1a;奥运金牌榜&#xff0c;完整论文代码模型目前已经更新&#xff0c;获取见文末名片

【数据结构】深入解析:构建父子节点树形数据结构并返回前端

树形数据结构列表 一、前言二、测试数据生成三、树形代码3.1、获取根节点3.2、遍历根节点&#xff0c;递归获取所有子节点3.3、排序3.4、完整代码 一、前言 返回前端VO对象中&#xff0c;有列情况列表展示需要带树形结构&#xff0c;例如基于RBAC权限模型中的菜单返回&#xf…

Docker快速部署高效照片管理系统LibrePhotos搭建私有云相册

文章目录 前言1.关于LibrePhotos2.本地部署LibrePhotos3.LibrePhotos简单使用4. 安装内网穿透5.配置LibrePhotos公网地址6. 配置固定公网地址 前言 想象一下这样的场景&#xff1a;你有一大堆珍贵的回忆照片&#xff0c;但又不想使用各种网盘来管理。怎么办&#xff1f;别担心…

【开源免费】基于Vue和SpringBoot的医院资源管理系统(附论文)

本文项目编号 T 161 &#xff0c;文末自助获取源码 \color{red}{T161&#xff0c;文末自助获取源码} T161&#xff0c;文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…

被占用的电脑文件推沟里

在使用电脑的过程中&#xff0c;你是否遇到过这种情况&#xff1a;想删除、移动或重命名一个文件&#xff0c;结果系统无情地告诉你——“文件被占用&#xff0c;无法操作&#xff01;”这时候&#xff0c;IObit Unlocker 就该闪亮登场了&#xff01;这款免费的文件解锁工具&am…