0

我想缩短目录的路径。

我知道路径必须开始的目录,例如(路径从1开始):

而不是C:\temp\top\1\file.txt,我想得到1\file.txt

4

2 回答 2

0

注意:小心使用 \ 和 /....

您可以遍历从文件到根目录的路径,以检查该目录是否是您想要的目录:

File baseDir = new File(basePath);
File candidate = new File(fullPath);
String subPath = candidate.getName();
candidate = candidate.getParent();

while (candidate != null && !candidate.equals(baseDir))
{
    candidate = candidate.getParent();
    subPath = candidate.getName() + File.separatorChar + subPath;
}

// now if candidate == null the file is on another directory, you have to use all the path
// if candidate != null, then subpath has what you want
于 2012-06-05T09:16:24.820 回答
0

您可以尝试使用来自String对象的 substring 和 indexOf 方法。

例子:

String path = "C:/temp/top/1/file.txt";
System.out.println(path.substring(path.indexOf("1")));
于 2012-06-05T09:14:21.157 回答