From 5eff5f8ed6d6af3f0eceabe1c6597cd3d846bde6 Mon Sep 17 00:00:00 2001 From: dongdingding <207595406@qq.com> Date: Mon, 31 Mar 2025 10:18:43 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=8C=E6=96=87=E6=9C=AC=E8=BD=AC=E5=8C=96pd?= =?UTF-8?q?f?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/gysl/utils/HtmlToPdfConverter.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/gysl/utils/HtmlToPdfConverter.java b/ruoyi-admin/src/main/java/com/ruoyi/gysl/utils/HtmlToPdfConverter.java index db7395c..ec2d411 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/gysl/utils/HtmlToPdfConverter.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/gysl/utils/HtmlToPdfConverter.java @@ -7,9 +7,12 @@ import com.itextpdf.text.Paragraph; import com.itextpdf.text.pdf.PdfWriter; import com.itextpdf.tool.xml.XMLWorkerFontProvider; import com.itextpdf.tool.xml.XMLWorkerHelper; +import com.ruoyi.common.utils.http.HttpUtils; import org.jsoup.Jsoup; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.mock.web.MockMultipartFile; import org.springframework.web.multipart.MultipartFile; @@ -29,6 +32,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; public class HtmlToPdfConverter { + private static final Logger log = LoggerFactory.getLogger(HttpUtils.class); public static MultipartFile convertHtmlToPdf(String htmlArticleTitle, String htmlContent) throws IOException { @@ -41,8 +45,9 @@ public class HtmlToPdfConverter { String[] split = format.split("-"); Path dirPath = Paths.get(path, "temporary", split[0], split[1], split[2]); try { + // clearTemporaryDirectory(Paths.get(path, "temporary")); // 清理目录 Files.createDirectories(dirPath); - clearTemporaryDirectory(Paths.get(path, "temporary")); // 清理目录 + } catch (IOException e) { throw new RuntimeException("创建文件夹失败: " + e.getMessage(), e); } @@ -111,8 +116,14 @@ public class HtmlToPdfConverter { } } } + MultipartFile multipartFile = getMultipartFile(pdfFile); + // 在此处删除创建的 PDF 文件 + boolean deleted = pdfFile.delete(); + if (!deleted) { + log.error("删除文件失败: " + pdfFile.getAbsolutePath()); - return getMultipartFile(pdfFile); + } + return multipartFile; } private static MultipartFile getMultipartFile(File file) throws IOException {