我有几个字符串被组合起来制作一个URI。我想确保生成的URI尽可能简单。例如,给定
str1 = "/dir1/dir2";
str2 = "./dir3/";
我想最终得到"/dir1/dir2/dir3/"
而不是"/dir1/dir2/./dir3/"
。
是否存在执行此类简化的Java库?
答案 0 :(得分:4)
尝试课程java.net.URI
URI uri = new URI("http://localhost/");
System.out.println(uri.resolve("dir1/dir2/./dir3/"));
答案 1 :(得分:1)
JDK7有一个Path.normalize方法,可以从路径中删除冗余的名称元素。它还包含Path.resolve,可用于连接两个路径。
请查看Java Tutorial | Path Operations了解详情。
答案 2 :(得分:0)
我猜URI
可以做那种工作,不是吗?
答案 3 :(得分:0)
如果URI课程没有达到你想要的水平,UriBuilder课程就会有更大的灵活性和力量。