Java Html转Word

java 复制代码
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
import org.springframework.web.multipart.MultipartFile;
import java.io.*;
import java.util.*;

/**
     * Html转Word
     * @author hjj
     */
    public static MultipartFile htmlToWord(String html,String filePath)  throws Exception {
        // 1.生成文件名称
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
        String fileName = filePath+"/"+"LangChain" + sdf.format(new Date())+".doc";
        // 返回MyltipartFile类
        MultipartFile multipartFile = null;
        if (StringUtils.isNotEmpty(html)) {
            // 2.创建一个新的文档
            XWPFDocument document = new XWPFDocument();
            // 3.创建段落并添加文本内容
            XWPFParagraph paragraph = document.createParagraph();
            XWPFRun run = paragraph.createRun();
            run.setText(html);
            // 4.保存文档到文件
            try (FileOutputStream out = new FileOutputStream(fileName)) {
                document.write(out);
                System.out.println("成功创建doc文件!");
                // 关闭流
                out.close();
                document.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            // 5.获取文件信息 Get File information
            File tempFile = new File(fileName);
            // 6.Create a FileInputStream from the file
            FileInputStream input = new FileInputStream(tempFile);
            // 7.Create a MultipartFile using MockMultipartFile
            multipartFile = new MockMultipartFile(
                    "file",
                    tempFile.getName(),
                    "application/msword",
                    input
            );

        }
        return multipartFile;
    }
相关推荐
肖恩想要年薪百万1 小时前
JSP中常用JSTL标签
java·开发语言·状态模式
程序员清风1 小时前
AI开发岗该如何准备面试?
java·后端·面试
笨拙的老猴子1 小时前
Spring AI 实战教程(七):Agent 智能体 —— 用电商购物助手学透自主规划与工具执行
java·人工智能·spring
月落归舟1 小时前
深入解析Java基础之基础
java·开发语言
折哥的程序人生 · 物流技术专研1 小时前
《Java 100 天进阶之路》第20篇:Java初始化、构造器、对象创建的过程
java·开发语言·后端·面试
电魂泡哥2 小时前
CMS垃圾回收
java·jvm·算法
Amctwd2 小时前
【Python】从Excel中按行提取图片
java·python·excel
啃臭2 小时前
AOP和反射
java·spring boot
西凉的悲伤2 小时前
java 使用PNG图片隐写文件
java·图片隐写·png
有梦想的小何2 小时前
Cursor AI 编程实战(篇一):Prompt 与案例总结
java·linux·prompt·ai编程