mirror of
https://gitee.com/dromara/hutool.git
synced 2025-07-16 07:59:46 +08:00
fix path
This commit is contained in:
parent
f96795c231
commit
f68a73538e
@ -1479,7 +1479,8 @@ public class FileUtil extends PathUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// issue#1703@Github
|
// issue#1703@Github
|
||||||
if(tops > 0){
|
if(tops > 0 && StrUtil.isEmpty(prefix)){
|
||||||
|
// 只有相对路径补充开头的..,绝对路径直接忽略之
|
||||||
while (tops-- > 0){
|
while (tops-- > 0){
|
||||||
//遍历完节点发现还有上级标注(即开头有一个或多个..),补充之
|
//遍历完节点发现还有上级标注(即开头有一个或多个..),补充之
|
||||||
// Normal path element found.
|
// Normal path element found.
|
||||||
|
@ -147,7 +147,7 @@ public class FileUtilTest {
|
|||||||
Assert.assertEquals("/bar", FileUtil.normalize("/foo/../bar"));
|
Assert.assertEquals("/bar", FileUtil.normalize("/foo/../bar"));
|
||||||
Assert.assertEquals("/bar/", FileUtil.normalize("/foo/../bar/"));
|
Assert.assertEquals("/bar/", FileUtil.normalize("/foo/../bar/"));
|
||||||
Assert.assertEquals("/baz", FileUtil.normalize("/foo/../bar/../baz"));
|
Assert.assertEquals("/baz", FileUtil.normalize("/foo/../bar/../baz"));
|
||||||
Assert.assertEquals("/../", FileUtil.normalize("/../"));
|
Assert.assertEquals("/", FileUtil.normalize("/../"));
|
||||||
Assert.assertEquals("foo", FileUtil.normalize("foo/bar/.."));
|
Assert.assertEquals("foo", FileUtil.normalize("foo/bar/.."));
|
||||||
Assert.assertEquals("../bar", FileUtil.normalize("foo/../../bar"));
|
Assert.assertEquals("../bar", FileUtil.normalize("foo/../../bar"));
|
||||||
Assert.assertEquals("bar", FileUtil.normalize("foo/../bar"));
|
Assert.assertEquals("bar", FileUtil.normalize("foo/../bar"));
|
||||||
@ -155,7 +155,7 @@ public class FileUtilTest {
|
|||||||
Assert.assertEquals("/bar", FileUtil.normalize("//server/../bar"));
|
Assert.assertEquals("/bar", FileUtil.normalize("//server/../bar"));
|
||||||
Assert.assertEquals("C:/bar", FileUtil.normalize("C:\\foo\\..\\bar"));
|
Assert.assertEquals("C:/bar", FileUtil.normalize("C:\\foo\\..\\bar"));
|
||||||
//
|
//
|
||||||
Assert.assertEquals("C:/../bar", FileUtil.normalize("C:\\..\\bar"));
|
Assert.assertEquals("C:/bar", FileUtil.normalize("C:\\..\\bar"));
|
||||||
Assert.assertEquals("../../bar", FileUtil.normalize("../../bar"));
|
Assert.assertEquals("../../bar", FileUtil.normalize("../../bar"));
|
||||||
Assert.assertEquals("C:/bar", FileUtil.normalize("/C:/bar"));
|
Assert.assertEquals("C:/bar", FileUtil.normalize("/C:/bar"));
|
||||||
Assert.assertEquals("C:", FileUtil.normalize("C:"));
|
Assert.assertEquals("C:", FileUtil.normalize("C:"));
|
||||||
|
Loading…
Reference in New Issue
Block a user