From 824bf11d05ce6a27f6c08990254f1f420f03f202 Mon Sep 17 00:00:00 2001 From: Looly Date: Thu, 29 Jun 2023 09:23:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DPathUtil.getMimeType=E5=8F=AF?= =?UTF-8?q?=E8=83=BD=E9=80=A0=E6=88=90=E7=9A=84=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dromara/hutool/core/io/file/PathUtil.java | 5 +++-- .../java/org/dromara/hutool/core/io/file/PathUtilTest.java | 6 ++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/io/file/PathUtil.java b/hutool-core/src/main/java/org/dromara/hutool/core/io/file/PathUtil.java index fa113412f..065ea407c 100644 --- a/hutool-core/src/main/java/org/dromara/hutool/core/io/file/PathUtil.java +++ b/hutool-core/src/main/java/org/dromara/hutool/core/io/file/PathUtil.java @@ -594,8 +594,9 @@ public class PathUtil { public static String getMimeType(final Path file) { try { return Files.probeContentType(file); - } catch (final IOException e) { - throw new IORuntimeException(e); + } catch (final IOException ignore) { + // issue#3179,使用OpenJDK可能抛出NoSuchFileException,此处返回null + return null; } } diff --git a/hutool-core/src/test/java/org/dromara/hutool/core/io/file/PathUtilTest.java b/hutool-core/src/test/java/org/dromara/hutool/core/io/file/PathUtilTest.java index 6aefc7dbc..58ddec385 100644 --- a/hutool-core/src/test/java/org/dromara/hutool/core/io/file/PathUtilTest.java +++ b/hutool-core/src/test/java/org/dromara/hutool/core/io/file/PathUtilTest.java @@ -93,4 +93,10 @@ public class PathUtilTest { public void moveTest2(){ PathUtil.move(Paths.get("D:\\project\\test1.txt"), Paths.get("D:\\project\\test2.txt"), false); } + + @Test + public void issue3179Test() { + final String mimeType = PathUtil.getMimeType(Paths.get("xxxx.jpg")); + Assertions.assertEquals("image/jpeg", mimeType); + } }