Java 实现Excel转HTML、或HTML转Excel

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

目录


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

XML 复制代码
<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文件。代码如下:

java 复制代码
import com.spire.xls.*;

public class ExcelToHtml {
    public static void main(String[] args) {
        //加载Excel工作簿
        Workbook wb = new Workbook();
        wb.loadFromFile("表格.xlsx");

        //将工作簿保存为html
        wb.saveToFile("Excel转Html.html",FileFormat.HTML);
    }
}

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

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

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

java 复制代码
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);

        //将工作表保存为html
        sheet.saveToHtml("SheetToHtml.html",options);

    }
}

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

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

java 复制代码
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

相关推荐
liuyao_xianhui12 小时前
内存管理(C/C++)
java·开发语言·c++
superlls12 小时前
(设计模式)区分建造者、 规格模式(MyBatis Example+Criteria )
java·tomcat
kimble_xia@oracle13 小时前
SQL 笔记
java·数据库·oracle
David爱编程13 小时前
深度解析:synchronized 性能演进史,从 JDK1.6 到 JDK17
java·后端
脑子慢且灵13 小时前
【JavaWeb】一个简单的Web浏览服务程序
java·前端·后端·servlet·tomcat·web·javaee
B612 little star king14 小时前
力扣29. 两数相除题解
java·算法·leetcode
野犬寒鸦14 小时前
力扣hot100:环形链表(快慢指针法)(141)
java·数据结构·算法·leetcode·面试·职场和发展
上官浩仁14 小时前
springboot synchronized 本地锁入门与实战
java·spring boot·spring
Gogo81614 小时前
java与node.js对比
java·node.js
SmartJavaAI14 小时前
Java调用Whisper和Vosk语音识别(ASR)模型,实现高效实时语音识别(附源码)
java·人工智能·whisper·语音识别