From 65ec4cf3aa2a87270ec65141dbddda22f3aa9326 Mon Sep 17 00:00:00 2001 From: Looly Date: Mon, 11 Mar 2024 23:39:36 +0800 Subject: [PATCH] =?UTF-8?q?FileUtil=E5=92=8CPathUtil=E5=A2=9E=E5=8A=A0Reso?= =?UTF-8?q?urce=E9=87=8D=E8=BD=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hutool-core/src/main/java/cn/hutool/core/io/FileUtil.java | 2 +- .../src/main/java/cn/hutool/core/io/file/PathUtil.java | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/hutool-core/src/main/java/cn/hutool/core/io/FileUtil.java b/hutool-core/src/main/java/cn/hutool/core/io/FileUtil.java index 7e25615a6..38096d235 100755 --- a/hutool-core/src/main/java/cn/hutool/core/io/FileUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/io/FileUtil.java @@ -1058,7 +1058,7 @@ public class FileUtil extends PathUtil { /** * 通过JDK7+的 Files#copy(InputStream, Path, CopyOption...) 方法拷贝文件 * - * @param src 源文件 + * @param src 源文件流,使用后不关闭 * @param dest 目标文件或目录,如果为目录使用与源文件相同的文件名 * @param options {@link StandardCopyOption} * @return 目标文件 diff --git a/hutool-core/src/main/java/cn/hutool/core/io/file/PathUtil.java b/hutool-core/src/main/java/cn/hutool/core/io/file/PathUtil.java index fc2a38e7f..e19be8359 100644 --- a/hutool-core/src/main/java/cn/hutool/core/io/file/PathUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/io/file/PathUtil.java @@ -196,13 +196,17 @@ public class PathUtil { if(src instanceof FileResource){ return copyFile(((FileResource) src).getFile().toPath(), target, options); } - return copyFile(src.getStream(), target, options); + try(InputStream stream = src.getStream()){ + return copyFile(stream, target, options); + } catch (IOException e) { + throw new RuntimeException(e); + } } /** * 通过JDK7+的 {@link Files#copy(InputStream, Path, CopyOption...)} 方法拷贝文件 * - * @param src 源文件流 + * @param src 源文件流,使用后不闭流 * @param target 目标文件或目录,如果为目录使用与源文件相同的文件名 * @param options {@link StandardCopyOption} * @return 目标Path