From 08791ac5a56a68b6085fe78caf7dfe392bd5f9b3 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Wed, 16 Jul 2025 18:21:27 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=8B=E8=BD=BD=E9=99=84?= =?UTF-8?q?=E4=BB=B6=E5=90=8E=E7=BC=80=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ruoyi/oa/utils/EmailUtil.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/utils/EmailUtil.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/utils/EmailUtil.java index ae63a35..ab6b2cb 100644 --- a/ruoyi-oa/src/main/java/com/ruoyi/oa/utils/EmailUtil.java +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/utils/EmailUtil.java @@ -357,12 +357,19 @@ public class EmailUtil { } /** - * 下载网络文件到本地临时文件 + * 下载网络文件到本地临时文件,保留原始文件后缀 * @param url 文件的http/https链接 * @return 本地临时文件 */ public static File downloadUrlToTempFile(String url) throws Exception { - File tempFile = File.createTempFile("mail_attach_", null); + // 提取文件名和后缀 + String fileName = url.substring(url.lastIndexOf('/') + 1); + String suffix = ""; + int dotIdx = fileName.lastIndexOf('.'); + if (dotIdx != -1) { + suffix = fileName.substring(dotIdx); + } + File tempFile = File.createTempFile("mail_attach_", suffix); try (java.io.InputStream in = new java.net.URL(url).openStream(); java.io.OutputStream out = new java.io.FileOutputStream(tempFile)) { byte[] buffer = new byte[8192];