浏览代码

Merge pull request #1315 from justmehyp/v5-dev

解决相对路径问题
Golden Looly 5 年之前
父节点
当前提交
38029d3239

+ 1 - 1
hutool-core/src/main/java/cn/hutool/core/io/FileUtil.java

@@ -3194,7 +3194,7 @@ public class FileUtil extends PathUtil {
 	public static boolean isSub(File parent, File sub) {
 		Assert.notNull(parent);
 		Assert.notNull(sub);
-		return sub.toPath().startsWith(parent.toPath());
+		return sub.toPath().toAbsolutePath().normalize().startsWith(parent.toPath().toAbsolutePath().normalize());
 	}
 
 	/**

+ 7 - 0
hutool-core/src/test/java/cn/hutool/core/io/FileUtilTest.java

@@ -384,4 +384,11 @@ public class FileUtilTest {
 		File file2 = new File("d:/test2/aaa");
 		Assert.assertFalse(FileUtil.isSub(file, file2));
 	}
+
+	@Test
+	public void isSubRelativeTest() {
+		File file = new File("..");
+		File file2 = new File(".");
+		Assert.assertTrue(FileUtil.isSub(file, file2));
+	}
 }