Java POI 实现 HTML 转 Word

简介

在 Java 开发中,经常需要将网页内容(HTML)导出为 Word 文档。Apache POI 是一个广泛使用的开源库,可用于操作 Microsoft Office 格式文件。 虽然 POI 本身不直接支持 HTML 解析,但可以通过结合其他工具(如 Jsoup)解析 HTML 并将其内容写入 Word 文档。

基本实现步骤

  1. 使用 Jsoup 解析 HTML 字符串。
  2. 遍历 HTML 元素,提取文本、标题、列表等内容。
  3. 使用 Apache POI 的 XWPFDocument 创建 .docx 文件并写入内容。

示例代码

import org.apache.poi.xwpf.usermodel.*;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import java.io.FileOutputStream;
import java.io.IOException;

public class HtmlToWord {
    public static void main(String[] args) throws IOException {
        String html = "<h1>标题</h1><p>这是一个段落。</p>";
        Document doc = Jsoup.parse(html);
        XWPFDocument wordDoc = new XWPFDocument();

        Elements elements = doc.body().children();
        for (Element el : elements) {
            if ("h1".equals(el.tagName())) {
                XWPFParagraph p = wordDoc.createParagraph();
                p.setStyle("Heading1");
                XWPFRun run = p.createRun();
                run.setText(el.text());
                run.setBold(true);
                run.setFontSize(16);
            } else if ("p".equals(el.tagName())) {
                XWPFParagraph p = wordDoc.createParagraph();
                XWPFRun run = p.createRun();
                run.setText(el.text());
            }
        }

        try (FileOutputStream out = new FileOutputStream("output.docx")) {
            wordDoc.write(out);
        }
        wordDoc.close();
    }
}

注意事项

相关工具推荐

如果您不需要编程实现,也可以使用以下在线工具快速完成格式转换:

Office是不是就是Word?全面解析Microsoft Office与Word的关系 Word数字编号自动生成方法大全 - 快速掌握自动编号技巧 Word公式显示乱码怎么修复?完整解决方案指南 怎么删除Word文档 - 完整操作指南与常见问题解答 Markdown在线生成导图 - 免费将Markdown文本一键转换为思维导图 Word怎么设置“第几页 共几页”页码格式?详细教程 Word怎么看历史打开记录?详细查看方法与技巧指南 PDF转换成Word网页版 - 免费在线PDF转Word工具 Markdown 教程 - 从入门到精通的完整指南 Word有空行但是删不掉?原因分析与解决方法大全 Word邮件功能怎么用?详细教程与操作指南 Word怎样删除页面 - 快速删除空白页或多余页面的方法 Word文档怎么引用邮件?详细操作指南与技巧 Word如何删除一页文档 - 快速删除空白页或指定页面的方法 Word竖版变横版 - 详细图文教程 | 如何将Word文档从纵向改为横向 PPTX转换成Word文档 - 免费在线转换工具指南 Word如何生成页码 - 详细图文教程指南 Markdown 使用方法完全指南 - 快速上手 Markdown 语法 SRT文件怎么转Word?完整教程与免费工具推荐 Word怎么自动生成PPT?详细教程与工具推荐 Word 转换 PPT 工具 - 免费在线一键转换 Word 文档为 PowerPoint PPT转Word最简单方法 - 免费在线转换工具推荐 Word删除空行的方法 - 快速清理文档多余空白行 PDF怎么转换成Word表格 - 免费在线转换教程与工具推荐 Word如何直接删除一页?详细操作方法与技巧 Word中查找和替换的快捷键 - 快速掌握Ctrl+H等高效操作 Word怎么把文字顶到最前面 - 详细图文教程 Word删除空白页的方法 - 快速解决多余空白页问题 Word添加附件只显示文件名 - 实用技巧指南 一次性修改Word文档中所有数字的字体 - 实用办公技巧指南 Word的邮件功能在哪里?详细图文教程指南 WPS如何打开Visio文件?详细教程与替代方案 Word设置页码格式 - 完整图文教程指南 Macrodroid破解免费中文版下载与使用指南 Markdown 使用流程图 - 快速入门与实践指南 Word怎么转PPT一键生成 - 免费在线转换工具指南 邮件Word的形式怎么弄 - Word邮件格式设置教程 Word如何提取一页单独保存?详细教程与技巧 Word如何看历史版本 - 恢复与查看文档修改记录完整指南 电脑文件WPS怎么改成Word?完整转换教程 自己搭建 Markdown 云笔记 - 免费开源方案指南 Word打不开的原因及解决方法 - 全面排查与修复指南 Word做表格的方法步骤 - 详细图文教程指南 邮件怎么以Word形式发送 - 实用办公指南 Word邮件在哪里?详解Word中邮件合并功能的位置与使用方法 Excel转Word的方法 - 免费在线工具与详细教程 Word文字替换怎么弄?详细操作步骤与技巧指南 PDF转Word的10个免费网站推荐 - 在线高效转换工具合集 Word表格字上面缺一半?原因与解决方法全解析 WPS会员转换Word文档 - 免费在线工具与教程指南 Word添加页码教程 - 详细图文指南与技巧 Word快速定位到某页的方法 - 实用办公技巧指南 Word表格数字改为货币格式 - 实用办公技巧指南 Visio导入到Word教程 - 完整操作指南 Word如何调整表格?详细图文教程与实用技巧 PPT转Word文档 - 免费在线转换工具与使用指南 Word表格写满自动下一行 - 解决方法与技巧指南 Word删除多余页方法大全 - 快速解决空白页、分页符问题 Excel怎么导出Word文档 - 实用办公技巧指南 Word跳转到指定页码 - 快速定位文档页面技巧 Word如何显示空格 - 显示与隐藏空格符号的详细教程 Word怎么删除空白部分?详细教程与技巧 Word转LRMX最简单方法 - 快速高效转换指南 Word打开是乱码怎么恢复?完整解决方法指南 Word和Excel的区别 - 功能、用途与适用场景详解 Excel转Word在线转换工具 - 免费一键转换Excel为Word文档 Word无法替换怎么回事?原因分析与解决方法大全 Word首页不显示页码 第二页显示2 - 实用技巧指南 Word公式显示不出来?原因分析与解决方法大全 Word图编号全部更新 - 一键解决图片题注编号混乱问题 PPTX怎么转换成Word文档?免费在线转换方法大全 如何下载Word免费版 - 完整安装与使用指南 现在最新的Word是哪个版本?Microsoft Word最新版本介绍 - 2025更新 WPS怎么将PDF转成Word?详细教程与免费工具推荐 HTML转Word文档 - 免费在线转换工具 Word查找替换的正确方法 - 高效办公技巧指南 Word表格底下空白处打不了字?原因与解决方法全解析 Word如何自动换行?详细设置方法与技巧指南 Word设置某一张页面为横向 - 详细图文教程 Word删除多页方法大全 - 快速高效删除Word文档中多余页面 Word删除自动编号 - 完整解决方法指南 Word怎么调整页数顺序 - 实用教程与技巧指南 手机怎么看md文件?Markdown查看方法大全 Word没有查找替换功能?原因与解决方法全解析 Word 2016是什么软件?功能介绍与使用指南 - 办公软件百科 Word文档突然乱码了?原因分析与解决方法大全 Word删除一页的正确方法 - 快速解决空白页、多余页问题 手机查看MD文件方法大全 - 轻松在移动端阅读Markdown文档 2025年Word最新版本 - 功能更新、下载指南与使用技巧 htm文件怎么改成Word文档?完整转换方法指南 Word使用教程详解 - 从入门到精通的完整指南 PDF转Word谁家最好用?2025年免费高效工具推荐 Word删除空白页的多种方法 - 快速解决多余空白页问题 Word删除多余的页面 - 快速清理空白页与多余分页教程 Word头粗尾细的渐变箭头制作教程与示例 表格转Word文档工具 - 免费在线转换Excel/表格为Word格式 Excel怎么转换成Word?详细教程与免费工具推荐 怎么把HTML转换成Word文档?完整方法与工具推荐 Excel转Word免费网站 - 在线一键转换工具 毕业论文交Word还是PDF?格式选择指南 - 在线办公技巧